Main Page: Difference between revisions

From N64brew Wiki
Jump to navigation Jump to search
Content added Content deleted
mNo edit summary
(libdragon has 3D support now)
 
(56 intermediate revisions by 7 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
====Video Interface====
* [[SGI Audio Tools]]
Is the configuration of resolution and color depth and a few effects that are applied to the image before being displayed.
* [[N64 IRIX|SGI Workstations using IRIX]]

* [[Partner N64]]
====Audio Interface====
|
This configures the [[Digital Analog Converter|Audio DAC]].
* [[:Category:Game Jams|Game Jams]]

*: List of homebrew game development events
====[[Peripheral Interface|PIF - Peripheral Interface]]====
* [[Development Troubleshooting]]
Handles reading/writing to/from the cartridge and interacts with the 4 controller ports using the [[Joybus Protocol]]
* [[Memory Allocation]]
}}
* [[MIPS III instructions|Instruction Cheatsheet]]

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

* 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>
}}

{{Colored box
|background-title-color= #CCCCCC
|title= [[:Category:Accessories|Accessories]]
|content=
<nowiki></nowiki>
* [[Controller]]
* [[64DD]]
* [[Mouse]]
===[[:Category:PAKs|PAKs]]===
* [[Controller PAK]]
* [[Jumper PAK]]
* [[Expansion 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