1; Lynx system hardware includes 2; Shawn Jefferson 3; June 18th, 2004 4; 5; Reference: 6; Bastian Schick's Lynx Documentation 7; http://www.geocities.ws/SiliconValley/Byte/4242/lynx/ 8; 9 10; *** 11; *** Suzy Addresses 12; *** 13 14; Sprite Control Block 15 16TMPADRL = $FC00 17TMPADRH = $FC01 18TILTACUML = $FC02 19TILTACUMH = $FC03 20HOFFL = $FC04 21HOFFH = $FC05 22VOFFL = $FC06 23VOFFH = $FC07 24VIDBASL = $FC08 25VIDBASH = $FC09 26COLLBASL = $FC0A 27COLLBASH = $FC0B 28VIDADRL = $FC0C 29VIDADRH = $FC0D 30COLLADRL = $FC0E 31COLLADRH = $FC0F 32SCBNEXTL = $FC10 33SCBNEXTH = $FC11 34SPRDLINEL = $FC12 35SPRDLINEH = $FC13 36HPOSSTRTL = $FC14 37HPOSSTRTH = $FC15 38VPOSSTRTL = $FC16 39VPOSSTRTH = $FC17 40SPRHSIZL = $FC18 41SPRHSIZH = $FC19 42SPRVSIZL = $FC1A 43SPRVSIZH = $FC1B 44STRETCHL = $FC1C 45STRETCHH = $FC1D 46TILTL = $FC1E 47TILTH = $FC1F 48SPRDOFFL = $FC20 49SPRDOFFH = $FC21 50SPRVPOSL = $FC22 51SPRVPOSH = $FC23 52COLLOFFL = $FC24 53COLLOFFH = $FC25 54VSIZACUML = $FC26 55VSIZACUMH = $FC27 56HSIZOFFL = $FC28 57HSIZOFFH = $FC29 58VSIZOFFL = $FC2A 59VSIZOFFH = $FC2B 60SCBADRL = $FC2C 61SCBADRH = $FC2D 62PROCADRL = $FC2E 63PROCADRH = $FC2F 64 65; Suzy Math 66 67MATHD = $FC52 68MATHC = $FC53 69MATHB = $FC54 70MATHA = $FC55 71MATHP = $FC56 72MATHN = $FC57 73MATHH = $FC60 74MATHG = $FC61 75MATHF = $FC62 76MATHE = $FC63 77MATHM = $FC6C 78MATHL = $FC6D 79MATHK = $FC6E 80MATHJ = $FC6F 81 82; Suzy Misc 83 84SPRCTL0 = $FC80 85SPRCTL1 = $FC81 86SPRCOLL = $FC82 87SPRINIT = $FC83 88SUZYHREV = $FC88 89SUZYSREV = $FC89 90SUZYBUSEN = $FC90 91SPRGO = $FC91 92SPRSYS = $FC92 93JOYSTICK = $FCB0 94SWITCHES = $FCB1 95RCART0 = $FCB2 96RCART1 = $FCB3 97LEDS = $FCC0 98PARSTATUS = $FCC2 99PARDATA = $FCC3 100HOWIE = $FCC4 101 102 103; *** 104; *** Mikey Addresses 105; *** 106 107; Mikey Timers 108 109TIMER0 = $FD00 110TIMER1 = $FD04 111TIMER2 = $FD08 112TIMER3 = $FD0C 113TIMER4 = $FD10 114TIMER5 = $FD14 115TIMER6 = $FD18 116TIMER7 = $FD1C 117HTIMER = $FD00 ; horizontal line timer (timer 0) 118VTIMER = $FD08 ; vertical blank timer (timer 2) 119STIMER = $FD1C ; sound timer (timer 7) 120 121HTIMBKUP = $FD00 ; horizontal line timer (timer 0) 122HTIMCTLA = $FD01 123HTIMCNT = $FD02 124HTIMCTLB = $FD03 125VTIMBKUP = $FD08 ; vertical blank timer (timer 2) 126VTIMCTLA = $FD09 127VTIMCNT = $FD0A 128VTIMCTLB = $FD0B 129BAUDBKUP = $FD10 ; serial timer (timer 4) 130STIMBKUP = $FD1C ; sound timer (timer 7) 131STIMCTLA = $FD1D 132STIMCNT = $FD1E 133STIMCTLB = $FD1F 134 135TIM0BKUP = $FD00 136TIM0CTLA = $FD01 137TIM0CNT = $FD02 138TIM0CTLB = $FD03 139TIM1BKUP = $FD04 140TIM1CTLA = $FD05 141TIM1CNT = $FD06 142TIM1CTLB = $FD07 143TIM2BKUP = $FD08 144TIM2CTLA = $FD09 145TIM2CNT = $FD0A 146TIM2CTLB = $FD0B 147TIM3BKUP = $FD0C 148TIM3CTLA = $FD0D 149TIM3CNT = $FD0E 150TIM3CTLB = $FD0F 151TIM4BKUP = $FD10 152TIM4CTLA = $FD11 153TIM4CNT = $FD12 154TIM4CTLB = $FD13 155TIM5BKUP = $FD14 156TIM5CTLA = $FD15 157TIM5CNT = $FD16 158TIM5CTLB = $FD17 159TIM6BKUP = $FD18 160TIM6CTLA = $FD19 161TIM6CNT = $FD1A 162TIM6CTLB = $FD1B 163TIM7BKUP = $FD1C 164TIM7CTLA = $FD1D 165TIM7CNT = $FD1E 166TIM7CTLB = $FD1F 167 168; Mikey Audio 169 170AUDIO0 = $FD20 ; audio channel 0 171AUDIO1 = $FD28 ; audio channel 1 172AUDIO2 = $FD30 ; audio channel 2 173AUDIO3 = $FD38 ; audio channel 3 174 175AUD0VOL = $FD20 176AUD0FEED = $FD21 177AUD0OUT = $FD22 178AUD0SHIFT = $FD23 179AUD0BKUP = $FD24 180AUD0CTLA = $FD25 181AUD0CNT = $FD26 182AUD0CTLB = $FD27 183AUD1VOL = $FD28 184AUD1FEED = $FD29 185AUD1OUT = $FD2A 186AUD1SHIFT = $FD2B 187AUD1BKUP = $FD2C 188AUD1CTLA = $FD2D 189AUD1CNT = $FD2E 190AUD1CTLB = $FD2F 191AUD2VOL = $FD30 192AUD2FEED = $FD31 193AUD2OUT = $FD32 194AUD2SHIFT = $FD33 195AUD2BKUP = $FD34 196AUD2CTLA = $FD35 197AUD2CNT = $FD36 198AUD2CTLB = $FD37 199AUD3VOL = $FD38 200AUD3FEED = $FD39 201AUD3OUT = $FD3A 202AUD3SHIFT = $FD3B 203AUD3BKUP = $FD3C 204AUD3CTLA = $FD3D 205AUD3CNT = $FD3E 206AUD3CTLB = $FD3F 207MSTEREO = $FD50 208 209; Mikey Misc 210 211; Interrupt bits in INTRST and INTSET 212TIMER0_INTERRUPT = $01 213TIMER1_INTERRUPT = $02 214TIMER2_INTERRUPT = $04 215TIMER3_INTERRUPT = $08 216TIMER4_INTERRUPT = $10 217TIMER5_INTERRUPT = $20 218TIMER6_INTERRUPT = $40 219TIMER7_INTERRUPT = $80 220 221HBL_INTERRUPT = TIMER0_INTERRUPT 222VBL_INTERRUPT = TIMER2_INTERRUPT 223SERIAL_INTERRUPT = TIMER4_INTERRUPT 224SND_INTERRUPT = TIMER7_INTERRUPT 225 226INTRST = $FD80 227INTSET = $FD81 228MAGRDY0 = $FD84 229MAGRDY1 = $FD85 230AUDIN = $FD86 231SYSCTL1 = $FD87 232MIKEYHREV = $FD88 233MIKEYSREV = $FD89 234IODIR = $FD8A 235IODAT = $FD8B 236TxIntEnable = %10000000 237RxIntEnable = %01000000 238TxParEnable = %00010000 239ResetErr = %00001000 240TxOpenColl = %00000100 241TxBreak = %00000010 242ParEven = %00000001 243TxReady = %10000000 244RxReady = %01000000 245TxEmpty = %00100000 246RxParityErr = %00010000 247RxOverrun = %00001000 248RxFrameErr = %00000100 249RxBreak = %00000010 250ParityBit = %00000001 251SERCTL = $FD8C 252SERDAT = $FD8D 253SDONEACK = $FD90 254CPUSLEEP = $FD91 255DISPCTL = $FD92 256PBKUP = $FD93 257DISPADRL = $FD94 258DISPADRH = $FD95 259MTEST0 = $FD9C 260MTEST1 = $FD9D 261MTEST2 = $FD9E 262PALETTE = $FDA0 ; hardware rgb palette 263GCOLMAP = $FDA0 ; hardware rgb palette (green) 264RBCOLMAP = $FDB0 ; hardware rgb palette (red-blue) 265 266 267; *** 268; *** Misc Hardware + 6502 vectors 269; *** 270 271MAPCTL = $FFF9 272VECTORS = $FFFB 273INTVECTL = $FFFE 274INTVECTH = $FFFF 275RSTVECTL = $FFFC 276RSTVECTH = $FFFD 277NMIVECTL = $FFFA 278NMIVECTH = $FFFB 279 280