mirror of
https://github.com/Polprzewodnikowy/SummerCart64.git
synced 2024-11-21 21:49:15 +01:00
[SC64][DOCS] Updated documentation / rearranged files
This commit is contained in:
parent
368fd435c5
commit
a537cf1b26
4
.github/sc64_v2_block_diagram.svg
vendored
4
.github/sc64_v2_block_diagram.svg
vendored
File diff suppressed because one or more lines are too long
Before Width: | Height: | Size: 92 KiB |
29
README.md
29
README.md
@ -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)
|
||||
|
4
assets/sc64_v2_block_diagram.svg
Normal file
4
assets/sc64_v2_block_diagram.svg
Normal file
File diff suppressed because one or more lines are too long
After Width: | Height: | Size: 92 KiB |
Before Width: | Height: | Size: 1.2 MiB After Width: | Height: | Size: 1.2 MiB |
@ -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 |
|
||||
| ----- | ------ | ------ | ------------------------------------------ |
|
@ -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).
|
||||
|
||||
---
|
||||
|
0
docs/05_fw_sw_building.md
Normal file
0
docs/05_fw_sw_building.md
Normal file
0
docs/06_manufacturing_guidelines.md
Normal file
0
docs/06_manufacturing_guidelines.md
Normal 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)
|
||||
|
Loading…
Reference in New Issue
Block a user