Main Page: Difference between revisions

From N64brew Wiki
Jump to navigation Jump to search
Content added Content deleted
m (Fix Typo)
(libdragon has 3D support now)
 
(44 intermediate revisions by 6 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;"
! style="font-size: 102.15%;" | Physical Components
! style="font-size: 102.15%;" | I/O Interfaces
|- style="background: #F5FAFF; vertical-align: top;"
|
* [[VR4300|VR4300 CPU]]
** [[COP1|FPU - CP1]]
** [[SysAD Interface]]
* [[Reality Coprocessor|Reality Coprocessor - RCP]]
** [[Reality Signal Processor|Reality Signal Processor - RSP]]
** [[Reality Display Processor|Reality Display Processor - RDP]]
* [[RDRAM]]
*: Rambus DRAM shared by the console
* [[PIF-NUS]]
*: A 4-bit microcomputer used to communicate with the controllers and EEPROM
* [[Audio DAC]]
* [[Video DAC]]
|
* [[Memory map]]
* [[MIPS Interface|MI - MIPS Interface]]
* [[Video Interface|VI - Video Interface]]
* [[Audio Interface|AI - Audio Interface]]
* [[Peripheral Interface|PI - Peripheral Interface]]
* [[RDRAM Interface|RI - RDRAM Interface]]
* [[Serial Interface|SI - Serial Interface]]
** [[Joybus Protocol]]
**: Communication protocol between the PIF, game cartridge, and connected controllers
|}
{| cellpadding="2px" cellspacing="2px" style="width: 100%; margin: 1em 0; margin-top: 0px; table-layout: fixed;"
|- style="background: #E0ECF7;"
! style="width: 38%; font-size: 102.15%;" | Controllers
! style="font-size: 102.15%;" | Paks
! style="font-size: 102.15%;" | Addons / Miscellaneous
|- style="background: #F5FAFF; vertical-align: top;"
|
* [[Controller|Tri-Wing Controller]]
* [[Train Controller]]
*: Used exclusively for Densha de Go
* [[Mouse]]
* [[Randnet Keyboard]]
* [[Voice Recognition Unit]]
* [[Dance Pad]]
* [[Fishing Rod]]
|
* [[Game Pak]] (Cartridge)
* [[Controller Pak]] (Memory Pak)
* [[Rumble Pak]]
* [[Transfer Pak]]
* [[Expansion Pak]]
* [[Jumper Pak]]
|
* [[64DD]] (64 Disk Drive)
* [[Doctor V64]]
* [[Homebrew Projects#Hardware|Flashcarts]]
|}


|
{{Colored box
{| cellpadding="2px" cellspacing="2px" style="width: 100%; table-layout: fixed;"
|background-title-color= #BBFFBB
|- style="background: #E0ECF7;"
|title= [[:Category:Motherboard|Motherboard]]
! style="font-size: 102.15%;" | Programming Tools / SDK's
|content=
! style="font-size: 102.15%;" | Game Development
<nowiki></nowiki>
|- style="background: #F5FAFF; vertical-align: top;"
====[[MIPS R4300|Main CPU MIPS R4300]]====
|
Is a MIPS R4300 64-bit Processor with a Floating Point Co-Processor
* [[Libdragon|libdragon]]

*: Homebrew SDK, Public Domain, 2D & 3D, Audio and Controller support, OpenGL 1.1 (unstable)
====[[Reality Signal Processor|RSP - Reality Signal Processor]]====
* [[Pseultra|pseultra]]
Is a MIPS R4000 32-bit Processor with an SIMD (Single Instruction Multiple Data) Co-Processor
*: Homebrew SDK, BSD 3 Clause License, 2D & 3D, Controller support but no audio

* [[Libultra|libultra]]
====[[Reality Display Processor|RDP - Reality Display Processor]]====
*: Nintendo's Official SDK, Partial source available
Is a dedicated hardware drawing process with a hard coded command set
* [[iQue SDK]]

*: Development library for the iQue Player
====[[Peripheral Interface|PIF - Peripheral Interface]]====
* [[SGI Audio Tools]]
Handles reading/writing to/from the cartridge and interacts with the 4 controller ports using the [[Joybus Protocol]]
* [[N64 IRIX|SGI Workstations using IRIX]]

* [[Partner N64]]
====[[Audio Interface]] and [[Video Interface]]====
|
Responsible for converting digital signals from the console to analog audio and video signals.
* [[:Category:Game Jams|Game Jams]]
}}
*: List of homebrew game development events

* [[Development Troubleshooting]]
{{Colored box
* [[Memory Allocation]]
|background-title-color= #CCCCFF
* [[MIPS III instructions|Instruction Cheatsheet]]
|title= [[:Category:Software Development Kits|SDK's]]
*: Includes CPU and FPU instructions and opcodes
|content=
* [[Building GCC]]
<nowiki></nowiki>
*: Guide to build a GCC cross-compiler for N64 development
==== [[pseultra]] ====
* [[MIPS Assembly]]
A homebrew N64 SDK. Still a work-in-progress but very feature-rich already.
*: Notes about MIPS assembly programming

|}
* BSD 3 Clause License
|}
* 3D Graphics
* 2D Graphics
* NO Audio
* Controllers

====[[libdragon]]====
A homebrew N64 SDK for developing N64 games.

* Public Domain
* NO 3D Graphics
* 2D Graphics
* Audio
* Controllers

====[[libultra]]====
Nintendo's official SDK library.

}}
}}

{{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>
==== Nintendo [[N64 IRIX]] Compiler and Tools ====
Only for use on SGI workstations running IRIX 5.3 or higher with an R4K or higher processor

==== Nintendo [[N64 Windows 16-bit]] Compiler and Tools ====
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]]
===[[:Category:PAKs|PAKs]]===
* [[Game PAK|Game PAK (Cartridge)]]
* [[Jumper PAK]]
* [[Expansion PAK]]
* [[Controller PAK]]
* [[Rumble PAK]]
* [[Transfer PAK]]
}}
}}

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