Main Page: Difference between revisions

From N64brew Wiki
Jump to navigation Jump to search
Content added Content deleted
m (Fixed formatting with previous edit.)
(libdragon has 3D support now)
 
(34 intermediate revisions by 4 users not shown)
Line 1: Line 1:
{{DISPLAYTITLE:<span style="position: absolute; clip: rect(1px 1px 1px 1px); clip: rect(1px, 1px, 1px, 1px);">{{FULLPAGENAME}}</span>}}
{{DISPLAYTITLE:<span style="position: absolute; clip: rect(1px 1px 1px 1px); clip: rect(1px, 1px, 1px, 1px);">{{FULLPAGENAME}}</span>}}__NOTOC__
{| cellpadding="2px" cellspacing="4px" style="width: 100%; margin: 1em 0; table-layout: fixed; font-size: 100%;"
__NOTOC__
|- style="background: #CEE0F2;"
{{Colored box
! Welcome to the N64brew Wiki!
|background-title-color= #CCCCCC
|- style="background: #F5FAFF;"
|title= Welcome to the {{SITENAME}} Homebrew Wiki!
| {{Center|This wiki is a collaboration among the homebrew community, proving accurate documentation of the Nintendo 64, its peripherals, and related software.<br>
|content=
'''Everyone is [[Help:Editing|welcome to contribute]]!'''<br>
This wiki is a collaboration among the homebrew community. Everyone is [[Help:Editing|welcome to contribute]]! Our goal is to provide accurate documentation of the entire N64 system, including peripherals and all related software. Please keep pages topic-based, and provide source references or evidence where necessary.
Find us on [https://discord.gg/WqFgNWf Discord], and be sure to check out [[Homebrew Projects|homebrew, hardware, and more]] from community members.<br>Also take a look at the [[FAQ|Frequently Asked Questions]].}}
}}
|}


{| cellpadding="2px" cellspacing="4px" style="width: 100%; margin: 1em 0; table-layout: fixed; font-size: 93%;"
{{ContentGrid
|- style="background: #CEE0F2;"
|content=
! style="width: 53%; font-size: 102.15%;" | '''Hardware'''
<!--
! style="font-size: 102.15%;" | '''Software'''
nowiki markers are added so the first bullet in the list are rendered correctly!
|- style="vertical-align: top;"
please don't remove those markers, thank you
|
-->
{| cellpadding="2px" cellspacing="2px" style="width: 100%; table-layout: fixed;"

|- style="background: #E0ECF7;"
{{Colored box
! style="font-size: 102.15%;" | Physical Components
|background-title-color= #BBFFBB
! style="font-size: 102.15%;" | I/O Interfaces
|title= [[:Category:Motherboard|Motherboard]]
|- style="background: #F5FAFF; vertical-align: top;"
|content=
|
<nowiki></nowiki>
====[[MIPS R4300|Main CPU MIPS R4300]]====
* [[VR4300|VR4300 CPU]]
** [[COP1|FPU - CP1]]
A MIPS R4300 64-bit Processor with a Floating Point Co-Processor
** [[SysAD Interface]]

====[[:Category:Reality CoProcessor|Reality CoProcessor]]====
* [[Reality Coprocessor|Reality Coprocessor - RCP]]
The RCP contains the [[Reality Signal Processor|RSP - Reality Signal Processor]] which is a MIPS R4000-type 32-bit Processor with an SIMD Co-Processor and the [[Reality Display Processor|RDP - Reality Display Processor]] a dedicated hardware drawing processor.
** [[Reality Signal Processor|Reality Signal Processor - RSP]]
** [[Reality Display Processor|Reality Display Processor - RDP]]

* [[RDRAM]]
====[[Peripheral Interface|PIF - Peripheral Interface]]====
*: Rambus DRAM shared by the console
Acts as both a BIOS and authentication validator for the console also manages the reset button and interacts with the 4 controller ports using the [[Joybus Protocol]]
* [[PIF-NUS]]

*: A 4-bit microcomputer used to communicate with the controllers and EEPROM
====[[Audio Interface]] and [[Video Interface]]====
* [[Audio DAC]]
Responsible for converting digital signals from the RCP to digital audio and video to be sent to the TV.
* [[Video DAC]]

|
====[[:Category:Motherboard|Motherboard]] components====
* [[Memory map]]
Additional hardware components on the motherboard.
* [[MIPS Interface|MI - MIPS Interface]]
}}
* [[Video Interface|VI - Video Interface]]

* [[Audio Interface|AI - Audio Interface]]
{{Colored box
* [[Peripheral Interface|PI - Peripheral Interface]]
|background-title-color= #CCCCFF
* [[RDRAM Interface|RI - RDRAM Interface]]
|title= [[:Category:Software Development Kits|SDK's]]
* [[Serial Interface|SI - Serial Interface]]
|content=
** [[Joybus Protocol]]
<nowiki></nowiki>
**: Communication protocol between the PIF, game cartridge, and connected controllers
==== [[pseultra]] ====
|}
A homebrew N64 SDK. Still a work-in-progress but very feature-rich already.
{| cellpadding="2px" cellspacing="2px" style="width: 100%; margin: 1em 0; margin-top: 0px; table-layout: fixed;"

|- style="background: #E0ECF7;"
* BSD 3 Clause License
! style="width: 38%; font-size: 102.15%;" | Controllers
* 3D Graphics
! style="font-size: 102.15%;" | Paks
* 2D Graphics
! style="font-size: 102.15%;" | Addons / Miscellaneous
* NO Audio
|- style="background: #F5FAFF; vertical-align: top;"
* Controllers
|

* [[Controller|Tri-Wing Controller]]
====[[libdragon]]====
* [[Train Controller]]
A homebrew N64 SDK for developing N64 games.
*: Used exclusively for Densha de Go

* [[Mouse]]
* Public Domain
* [[Randnet Keyboard]]
* NO 3D Graphics
* 2D Graphics
* Audio
* Controllers

====[[libultra]]====
Nintendo's official SDK library.
* Partially Source-Available

}}
}}

{{ContentGrid
|content=
<!--
nowiki markers are added so the first bullet in the list are rendered correctly!
please don't remove those markers, thank you
-->

{{Colored box
|background-title-color= #CCCCCC
|title= [[:Category:Compilers|Compilers]]
|content=
<nowiki></nowiki>
==== [[N64 IRIX]] SDK ====
Only for use on SGI workstations running IRIX 5.3 or higher with an R4K or higher processor

==== [[Partner-N64 SDK]] ====
These tools are mostly 16-bit and will require a Windows OS of Win95, Win98, Win2K, WinXP

==== Nintendo [[iQue Linux 32-bit]] Compiler and Tools ====
If you are running a version of Linux that can support these programs this is probably the best solution

==== n64chain [[N64 Windows/Linux 64-bit]] Compiler and Tools ====
This is the most modern compiler and tools, but some parts of the ROM build process are not well supported
}}

{{Colored box
|background-title-color= #CCCCCC
|title= [[:Category:Accessories|Accessories]]
|content=
<nowiki></nowiki>
* [[Controller]]
* [[64DD]]
* [[Voice Recognition Unit]]
* [[Voice Recognition Unit]]
* [[Dance Pad]]
===[[:Category:Paks|Paks]]===
* [[Fishing Rod]]
* [[Game Pak|Game Pak (Cartridge)]]
|
* [[Jumper Pak]]
* [[Expansion Pak]]
* [[Game Pak]] (Cartridge)
* [[Controller Pak]]
* [[Controller Pak]] (Memory Pak)
* [[Rumble Pak]]
* [[Rumble Pak]]
* [[Transfer Pak]]
* [[Transfer Pak]]
* [[Expansion Pak]]
===[[:Category:Flash_Carts|Flash Carts]]===
* [[Jumper Pak]]
<nowiki></nowiki>
|
}}
* [[64DD]] (64 Disk Drive)
}}
* [[Doctor V64]]
* [[Homebrew Projects#Hardware|Flashcarts]]
|}

|
{| cellpadding="2px" cellspacing="2px" style="width: 100%; table-layout: fixed;"
|- style="background: #E0ECF7;"
! style="font-size: 102.15%;" | Programming Tools / SDK's
! style="font-size: 102.15%;" | Game Development
|- style="background: #F5FAFF; vertical-align: top;"
|
* [[Libdragon|libdragon]]
*: Homebrew SDK, Public Domain, 2D & 3D, Audio and Controller support, OpenGL 1.1 (unstable)
* [[Pseultra|pseultra]]
*: Homebrew SDK, BSD 3 Clause License, 2D & 3D, Controller support but no audio
* [[Libultra|libultra]]
*: Nintendo's Official SDK, Partial source available
* [[iQue SDK]]
*: Development library for the iQue Player
* [[SGI Audio Tools]]
* [[N64 IRIX|SGI Workstations using IRIX]]
* [[Partner N64]]
|
* [[:Category:Game Jams|Game Jams]]
*: List of homebrew game development events
* [[Development Troubleshooting]]
* [[Memory Allocation]]
* [[MIPS III instructions|Instruction Cheatsheet]]
*: Includes CPU and FPU instructions and opcodes
* [[Building GCC]]
*: Guide to build a GCC cross-compiler for N64 development
* [[MIPS Assembly]]
*: Notes about MIPS assembly programming
|}
|}

Latest revision as of 19:36, 25 October 2023

Welcome to the N64brew Wiki!
This wiki is a collaboration among the homebrew community, proving accurate documentation of the Nintendo 64, its peripherals, and related software.

Everyone is welcome to contribute!

Find us on Discord, and be sure to check out homebrew, hardware, and more from community members.
Also take a look at the Frequently Asked Questions.
Hardware Software
Physical Components I/O Interfaces
Controllers Paks Addons / Miscellaneous
Programming Tools / SDK's Game Development