EverDrive-64 v3: Difference between revisions
Boot ROM header and nits
(Boot ROM header and nits) |
|||
Line 49:
| 0x08040028 || REG_SEC || ? || ?
|-
| 0x0804002C || REG_VER || R ||
|-
| 0x08040030 || ? || R/W || I2C to access RTC
Line 80:
! bit from lsb !! description
|-
| 15 || 1=
|-
| 9-8 || D64 specific??
|-
| 6-5 || I2C/RTC?? (01=RTC emulation through Cart EEPROM command 06/07)
|-
| 3 || WR_ADDR_MASK??
Line 290:
|-
|15-8
|
|-
|7-0
|
|}
ex. 0x0304 for
=== 0x08040030 (I2C/RTC) ===
Line 398:
SDRAM must be disabled (REG_CFG & 1 must be zero).
== ED64 Boot ROM Header ==
You can read boot ROM header by:
* set <code>REG_CFG &= ~1</code> (disable SDRAM)
* read from cart usually (by <code>*(uint32_t*)0xB0000000</code> etc, or use PI DMA)
{| class="wikitable"
!PI address
!bytes
!description
|-
|0x10000020
|12
|"ED64 SD boot", can be used to identify ED64 v2 or v3
|-
|0x10000038
|2
|assembly date in FAT style
|-
|0x1000003A
|2
|assembly time in 2-seconds from 00:00:00, ex. 0x5878 for 12:34:56
|-
|0x1000003C
|2
|serial number (16bit binary, hex)
|}
They are, of course, big endian.
{| class="wikitable"
|+Date in FAT Style
!bit from lsb
!
|-
|15-9
|year - 1980
|-
|8-5
|month (start from 1)
|-
|4-0
|day (start from 1)
|}
== USB Serial Communication ==
|