[SC64][DOCS] Updated documentation / rearranged files

This commit is contained in:
Mateusz Faderewski 2023-01-01 22:09:27 +01:00
parent 368fd435c5
commit a537cf1b26
11 changed files with 40 additions and 31 deletions

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 92 KiB

View File

@ -5,39 +5,42 @@
---
## Features
- 64 MB SDRAM memory for game and save data
- 16 MB FLASH memory for bootloader and extended game data
- 8 kB on-chip buffer for general use
- 25 MB/s peak transfer rate USB interface for data upload/download and debug functionality
- 25 MB/s peak transfer rate SD card interface
- 64 MiB SDRAM memory for game and save data
- 16 MiB FLASH memory for bootloader and extended game data
- 8 kiB on-chip buffer for general use
- ~23.8 MiB/s peak transfer rate USB interface for data upload/download and debug functionality
- ~23.8 MiB/s peak transfer rate SD card interface
- EEPROM, SRAM and FlashRAM save types with automatic writeback to SD card
- Battery backed real time clock (RTC)
- Status LED and button for general use
- 64DD add-on emulation
- IS-Viewer 64 debug interface
- Software and firmware update via USB interface
- N64 bootloader with support for IPL2 registers spoofing and loading menu from SD card
- N64 bootloader with support for IPL3 registers spoofing and loading menu from SD card
- Enhanced [UltraCIC_C](https://github.com/jago85/UltraCIC_C) emulation with automatic region switching and programmable seed/checksum values
- PC app for communicating with flashcart (game/save data upload/download, feature enable control and debug console)
- PC app for communicating with flashcart (game/save data upload/download, feature enable control and debug terminal)
- [UNFLoader](https://github.com/buu342/N64-UNFLoader) support
- 3D printable plastic shell
---
## Documentation
- [Memory map](./docs/memory_map.md)
- [Config options](./docs/config_options.md)
- [N64 commands](./docs/n64_commands.md)
- [USB commands](./docs/usb_commands.md)
- [Memory map](./docs/01_memory_map.md)
- [USB commands](./docs/02_usb_commands.md)
- [N64 commands](./docs/03_n64_commands.md)
- [Config options](./docs/04_config_options.md)
- [FW/SW building](./docs/05_fw_sw_building.md)
- [Manufacturing guidelines](./docs/06_manufacturing_guidelines.md)
---
## High-level flashcart block diagram
[<img src=".github/sc64_v2_block_diagram.svg" width="800" />](.github/sc64_v2_block_diagram.svg)
[<img src="assets/sc64_v2_block_diagram.svg" width="800" />](assets/sc64_v2_block_diagram.svg)
---
## Finished sample
[<img src=".github/sc64_v2_example.jpg" alt="SC64 HW ver: 2.0" width="800" />](.github/sc64_v2_example.jpg)
[<img src="assets/sc64_v2_example.jpg" alt="SC64 HW ver: 2.0" width="800" />](assets/sc64_v2_example.jpg)

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 92 KiB

View File

Before

Width:  |  Height:  |  Size: 1.2 MiB

After

Width:  |  Height:  |  Size: 1.2 MiB

View File

@ -3,10 +3,10 @@
- [Address decoding limitations](#address-decoding-limitations)
- [Flash mapped sections](#flash-mapped-sections)
- [SC64 registers](#sc64-registers)
- [**STATUS/COMMAND**](#statuscommand)
- [**DATA0** and **DATA1**](#data0-and-data1)
- [**VERSION**](#version)
- [**KEY**](#key)
- [`0x1FFF_0000`: **STATUS/COMMAND**](#0x1fff_0000-statuscommand)
- [`0x1FFF_0004`: **DATA0** and `0x1FFF_0008`: **DATA1**](#0x1fff_0004-data0-and-0x1fff_0008-data1)
- [`0x1FFF_000C`: **VERSION**](#0x1fff_000c-version)
- [`0x1FFF_0010`: **KEY**](#0x1fff_0010-key)
- [Command execution flow](#command-execution-flow)
---
@ -97,7 +97,7 @@ Support for interrupts is provided but currently no command relies on it, 64DD I
---
#### **STATUS/COMMAND**
#### `0x1FFF_0000`: **STATUS/COMMAND**
| name | bits | access | meaning |
| ------------- | ------ | ------ | ----------------------------------------------------- |
@ -111,7 +111,7 @@ Note: Write to this register raises `CMD_BUSY` bit and clears `CMD_ERROR` bit. F
---
#### **DATA0** and **DATA1**
#### `0x1FFF_0004`: **DATA0** and `0x1FFF_0008`: **DATA1**
| name | bits | access | meaning |
| --------- | ------ | ------ | ---------------------------------- |
@ -121,7 +121,7 @@ Note: Result is valid only when command has executed and `CMD_BUSY` bit is reset
---
#### **VERSION**
#### `0x1FFF_000C`: **VERSION**
| name | bits | access | meaning |
| --------- | ------ | ------ | --------------------------------------------- |
@ -131,7 +131,7 @@ Note: Writing any value to this register will clear pending flashcart interrupt.
---
#### **KEY**
#### `0x1FFF_0010`: **KEY**
| name | bits | access | meaning |
| ----- | ------ | ------ | ------------------------------------------ |

View File

@ -20,7 +20,7 @@
## Supported config options
SC64 provides simple flashcart configuration by exposing various options settable by both USB and N64 side.
All options other than **BOOTLOADER_SWITCH** are preserved on console reset or power cycle.
All options other than **BOOTLOADER_SWITCH** are preserved on console reset or power cycle (only when powered from USB).
| id | name | type | description |
| ---- | ----------------------- | ------- | ----------------------------------------------------------------------- |
@ -73,7 +73,7 @@ type: *bool* | default: `0`
Last 128 kiB of SDRAM is shared between ROM data and SRAM/FlashRAM save data.
Use this setting for applications requiring all of ROM section space including last 128 kiB.
Check [PI memory map](./memory_map.md#pi-memory-map) for more information.
Check [PI memory map](./01_memory_map.md#pi-memory-map) for more information.
---
@ -143,6 +143,7 @@ type: *word* | default: `0xFFFF`
Use this setting to force specific CIC seed/version.
Lower 8 bits represents CIC seed and 9th bit represents CIC version.
By setting value `0xFFFF` bootloader will try to guess needed values from loaded ROM IPL3.
This setting is not used when **BOOT_MODE** is set to `3` (direct boot).
---
@ -157,6 +158,7 @@ type: *enum* | default: `3`
Use this setting to force specific TV type.
By setting value `3` bootloader will try to guess TV type from loaded ROM header.
This setting is not used when **BOOT_MODE** is set to `3` (direct boot).
---

View File

View File

View File

@ -4,7 +4,11 @@
---
- [Memory map](./memory_map.md)
- [Config options](./config_options.md)
- [N64 commands](./n64_commands.md)
- [USB commands](./usb_commands.md)
## Documentation
- [Memory map](./01_memory_map.md)
- [USB commands](./02_usb_commands.md)
- [N64 commands](./03_n64_commands.md)
- [Config options](./04_config_options.md)
- [FW/SW building](./05_fw_sw_building.md)
- [Manufacturing guidelines](./06_manufacturing_guidelines.md)