86 lines
1.9 KiB
PHP
86 lines
1.9 KiB
PHP
; PPU registers
|
|
PPUCTRL = $2000
|
|
PPUMASK = $2001
|
|
PPUSTATUS = $2002
|
|
OAMADDR = $2003
|
|
OAMDATA = $2004
|
|
PPUSCROLL = $2005
|
|
PPUADDR = $2006
|
|
PPUDATA = $2007
|
|
OAMDMA = $4014
|
|
JOY1 = $4016
|
|
|
|
; Variables
|
|
PpuControlShadow = $10
|
|
PpuMaskShadow = $11
|
|
Controller1Held = $14
|
|
Controller1Pressed = $15
|
|
Controller2Held = $16
|
|
Controller2Pressed = $17
|
|
ControllerState = Controller1Held
|
|
NmiDispatchMode = $40
|
|
NmiState = $41
|
|
MenuSelectionIndex = $42
|
|
NmiSequenceStep = $44
|
|
NmiSyncState = $48
|
|
InputActionLatch = $49
|
|
OamBuffer = $0200
|
|
PersistentRecord0 = $0580
|
|
PersistentRecord1 = $05A3
|
|
ResetMagic1 = $05CE
|
|
ResetMagic2 = $05CF
|
|
PersistentBuffer = $06E0
|
|
PAD_RIGHT=$01
|
|
PAD_LEFT=$02
|
|
PAD_DOWN=$04
|
|
PAD_UP=$08
|
|
PAD_START=$10
|
|
PAD_SELECT=$20
|
|
PAD_B=$40
|
|
PAD_A=$80
|
|
PAD_HORIZONTAL=PAD_LEFT|PAD_RIGHT
|
|
PAD_VERTICAL=PAD_UP|PAD_DOWN
|
|
PAD_DPAD=PAD_HORIZONTAL|PAD_VERTICAL
|
|
PAD_MENU_INPUT=PAD_SELECT|PAD_START|PAD_VERTICAL
|
|
MENU_HORIZONTAL_COUNT=$05
|
|
MENU_VERTICAL_COUNT=$06
|
|
MENU_ACTION_NONE=$00
|
|
MENU_ACTION_ACCEPTED=$04
|
|
NMI_SYNC_PENDING=$FF
|
|
NMI_SYNC_COMPLETE=$01
|
|
RESET_MAGIC_1=$A5
|
|
RESET_MAGIC_2=$5A
|
|
PPUCTRL_NMI_ENABLE=$80
|
|
|
|
WorkingBuffer = $05E0
|
|
PERSISTENT_BUFFER_SIZE = $0100
|
|
|
|
StateTargetCA85 = $CA85
|
|
|
|
; Serial I/O helpers using $4016 (verified structure; peripheral identity unknown)
|
|
WriteSerialTiming = $C62D
|
|
WaitSerialPulse = $C639
|
|
TransmitPulseShort = $C64E
|
|
TransmitPulseLong = $C653
|
|
TransmitByte = $C66E
|
|
IncrementSerialCount = $C68A
|
|
ReceiveSerialBit = $C691
|
|
ReceiveByte = $C6A5
|
|
|
|
; Block protocol helpers
|
|
TransmitRuntimeData = $C6C8
|
|
TransmitDataBlock = $C6D1
|
|
SetupTransmitRamBlock = $C716
|
|
SetupTransmitWorkingBuffer = $C726
|
|
SetTransmitPreambleCounts = $C734
|
|
ReceiveRuntimeData = $C739
|
|
ReceiveDataBlock = $C792
|
|
SerialBlockLength = $0D
|
|
SerialBlockPtr = $0E
|
|
SerialBitCountLo = $08
|
|
SerialBitCountHi = $09
|
|
|
|
; App Specific Variables
|
|
TMP00 = $00
|
|
TMP01 = $01
|