EverDrive-64 v3: Difference between revisions

 
(2 intermediate revisions by the same user not shown)
Line 49:
| 0x08040028 || REG_SEC || ? || ?
|-
| 0x0804002C || REG_VER || R || HardwareFirmware version
|-
| 0x08040030 || ? || R/W || I2C to access RTC
Line 80:
! bit from lsb !! description
|-
| 15 || 1=startfinish FPGA configuration?? (after REG_CFG_* writes)
|-
| 9-8 || D64 specific??
|-
| 6-5 ||RTC (00=disable, 01=RTC emulation enabled through Cart EEPROM command 06/07, 11=RTC access enabled via I2C)
| 6-5 || I2C/RTC??
|-
| 3 || WR_ADDR_MASK??
Line 290:
|-
|15-8
|HWFirmware major version
|-
|7-0
|HWFirmware minor version
|}
ex. 0x0304 for HWFirmware v3.04
 
=== 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 SD is usable or not (=SPI)
|-
|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
!description
|-
|15-9
|year - 1980
|-
|8-5
|month (start from 1)
|-
|4-0
|day (start from 1)
|}
 
== USB Serial Communication ==
24

edits