[{TableOfContents }]

[Differences Atari 400/800 - 1200XL - 600/800XL|DiffOldOs2XL]

!Page 0
||address||hexaddress||NAME||description||OS
|0,1|$0000,$0001|[LINZBS]| |A
|0|$0000|[LINFLG]| |X
|1|$0001|[NGFLAG]| |X
|2,3|$0002,$0003|[CASINI]| |
|4,5|$0004,$0005|[RAMLO]| |
|6|$0006|[TRAMSZ]| |A
|6|$0006|[TRNSMZ]| |X
|7|$0007|[TSTDAT]| |A
|7|$0007|[TSTDAT]| |X
|8|$0008|[WARMST]| |
|9|$0009|[BOOT?]| |
|10,11|$000A,$000B|[DOSVEC]| |
|12,13|$000C,$000D|[DOSINI]| |
|14,15|$000E,$000F|[APPMHI]| |
|16|$0010|[POKMSK]| |
|17|$0011|[BRKKEY]| |
|18-20|$0012-$0014|[RTCLOK]| |
|21,22|$0015,$0016|[BUFADR]| |
|23|$0017|[ICCOMT]| |
|24,25|$0018,$0019|[DSKFMS]| |
|26,27|$001A,$001B|[DSKUTL]| |
|28|$001C|[PTIMOT]| |A
|29|$001D|[PBPNT]| |A
|30|$001E|[PBUFSZT]| |A
|31|$001F|[PTEMP]| |A
|28-31|$001C-$001F|[ABUFPT]| |X
|32|$0020|[ICHIDZ]| |
|33|$0021|[ICDNOZ]| |
|34|$0022|[ICCOMZ]| |
|35|$0023|[ICSTAZ]| |
|36,37|$0024,$0025|[ICBALZ],[ICBAHZ]| |
|38,39|$0026,$0027|[ICPTLZ],[ICPTHZ]| |
|40,41|$0028,$0029|[ICBLLZ],[ICBLHZ]| |
|42|$002A|[ICAX1Z]| |
|43|$002B|[ICAX2Z]| |
|44,45|$002C,$002D|[ICAX3Z],[ICAX4Z]| |
|46|$002E|[ICAX5Z]| |
|47|$002F|[ICAX6Z]| |
|48|$0030|[STATUS]| |
|49|$0031|[CHKSUM]| |
|50,51|$0032,$0033|[BUFRLO],[BUFRHI]| |
|52,53|$0034,$0035|[BFENLO],[BFENHI]| |
|54|$0036|[CRETRY]| |A
|55|$0037|[DRETRY]| |A
|54,55|$0036,$0037|[LTEMP]| |X
|56|$0038|[BUFRFL]| |
|57|$0039|[RECVDN]| |
|58|$003A|[XMTDON]| |
|59|$003B|[CHKSNT]| |
|60|$003C|[NOCKSM]| |
|61|$003D|[BPTR]| |
|62|$003E|[FTYPE]| |
|63|$003F|[FEOF]| |
|64|$0040|[FREQ]| |
|65|$0041|[SOUNDR]| |
|66|$0042|[CRITIC]| |
|67-73|$0043-$0049|[FMZSPG]| |
|67,68|$0043,$0044|[ZBUFP]| |
|69,70|$0045,$0046|[ZDRVA]| |
|71,72|$0047,$0048|[ZSBA]| |
|73|$0049|[ERRNO]| |
|74|$004A|[CKEY]| |A
|75|$004B|[CASSBT]| |A
|74,75|$004A,$004B|[ZCHAIN]| |X
|76|$004C|[DSTAT]| |
|77|$004D|[ATRACT]| |
|78|$004E|[DRKMSK]| |
|79|$004F|[COLRSH]| |
|80|$0050|[TEMP]| |
|81|$0051|[HOLD1]| |
|82|$0052|[LMARGN]| |
|83|$0053|[RMARGN]| |
|84|$0054|[ROWCRS]| |
|85,86|$0055,$0056|[COLCRS]| |
|87|$0057|[DINDEX]| |
|88,89|$0058,$0059|[SAVMSC]| |
|90|$005A|[OLDROW]| |
|91,92|$005B,$005C|[OLDCOL]| |
|93|$005D|[OLDCHR]| |
|94,95|$005E,$005F|[OLDADR]| |
|96|$0060|[NEWROW]| |A
|96,97|$0060,$0061|[FKDEF]| |X
|97,98|$0061,$0062|[NEWCOL]| |A
|98|$0062|[PALNTS]| |X
|99|$0063|[LOGCOL]| |
|100,101|$0064;$0065|[ADRESS]| |
|102,103|$0066,$0067|[MLTTMP]| |
|104,105|$0068,$0069|[SAVADR]| |
|106|$006A|[RAMTOP]| |
|107|$006B|[BUFCNT]| |
|108,109|$006C,$006D|[BUFSTR]| |
|110|$006E|[BITMSK]| |
|111|$006F|[SHFAMT]| |
|112,113|$0070,$0071|[ROWAC]| |
|114,115|$0072,$0073|[COLAC]| |
|116,117|$0074,$0075|[ENDPT]| |
|118|$0076|[DELTAR]| |
|119,120|$0077,$0078|[DELTAC]| |
|121|$0079|[ROWINC]| |A
|122|$007A|[COLINC]| |A
|121,122|$0079,$007A|[KEYDEF]| |X
|123|$007B|[SWPFLG]| |
|124|$007C|[HOLDCH]| |
|125|$007D|[INSDAT]| |
|126,127|$007E,$007F|[COUNTR]| |
|128,129|$0080,$0081|[LOMEM]| |
|130,131|$0082,$0083|[VNTP]| |
|132,133|$0084,$0085|[VNTD]| |
|134,135|$0086,$0087|[VVTP]| |
|136,137|$0088,$0089|[STMTAB]| |
|138,139|$008A,$008B|[STMCUR]| |
|140,141|$008C,$008D|[STARP]| |
|142,143|$008E,$008F|[RUNSTK]| |
|144,145|$0090,$0091|[MEMTOP|TOPSTK]| |
|146-202|$0092-$00CA| |reserved for BASIC ROM|
|186,187|$00BA,$00BB|[STOPLN]| |
|195|$00C3|[ERRSAVE]| |
|201|$00C9|[PTABW]| |
|203-207|$00CB-$00CF| |unused by BASIC and ASSEMBLER|
|208,209|$00D0,$00D1| |unused by BASIC|
|210,211|$00D2,$00D3| |reserved for BASIC or cartridge use|
|212-217|$00D4-$00D9|[FR0]|Floating point register zero; holds a six-byte internal form of the FP number|
|218-223|$00D1-$00DF|[FRE]|FP extra register|
|224-229|$00E0-$00E5|[FR1]|Floating point register one; holds a six-byte internal form of the FP number as does FR0|
|230-235|$00E6-$00EB|[FR2]|FP register two|
|236|$00EC|[FRX]|FP spare register|
|237|$00ED|[EEXP]|The value of E (the exponent)|
|238|$00EE|[NSIGN]|The sign of the FP number|
|239|$00EF|[ESIGN]|The sign of the exponent|
|240|$00F0|[FCHRFLG]|The first character flag|
|241|$00F1|[DIGRT]|The number of digits to the right of the decimal|
|242|$00F2|[CIX]|Character (current input) index. Used as an offset to the input text buffer pointed to by INBUFF below.|
|243,244|$00F3,$00F4|[INBUFF]|Input ASCII text buffer pointer|
|245,246|$00F5,$00F6|[ZTEMP1]|Temporary register|
|247,248|$00F7,$00F8|[ZTEMP4]|Temporary register|
|249,250|$00F9,$00FA|[ZTEMP3]|Temporary register|
|251|$00FB|[RADFLG]|Also called DEGFLG. When 0 all functions are performed in radians; when set to 6, they are done in degrees|
|252,253|$00FC,$00FD|[FLPTR]|Points to the user's FP number|
|254,255|$00FE,$00FF|[FPTR2]|Pointer to the user's second FP operation.|

%%commentbox [^|Memory Map#Page0] %%
!Page 1
||adress||hexaddress||NAME||description||OS
|256-511|$0100-$01FF| |The OS/DOS/BASIC stack |

%%commentbox [^|Memory Map#Page 0] %%
!Page 2 
||address||hexaddress||NAME||description||OS
|512,513|$0200,$0201|[VDSLST]|Vector to Display List Interrupt routine |
|514,515|$0202,$0203|[VPRCED]| |
|516,517|$0204,$0205|[VINTER]| |
|518,519|$0206,$0207|[VBREAK]| |
|520,521|$0208,$0209|[VKEYBD]| |
|522,523|$020A,$020B|[VSERIN]| |
|524,525|$020C,$020D|[VSEROR]| |
|526,527|$020E,$020F|[VSEROC]| |
|528,529|$0210,$0211|[VTIMR1]| |
|530,531|$0212,$0213|[VTIMR2]| |
|532,533|$0214,$0215|[VTIMR4]| |
|534,535|$0216,$0217|[VIMIRQ]| |
|536,537|$0218,$0219|[CDTMV1]| |
|538,539|$021A,$021B|[CDTMV2]| |
|540,541|$021C,$021D|[CDTMV3]| |
|542,543|$021E,$021F|[CDTMV4]| |
|544,545|$0220,$0221|[CDTMV5]| |
|546,547|$0222,$0223|[VVBLKI]| |
|548,549|$0224,$0225|[VVBLKD]| |
|550,551|$0226,$0227|[CDTMA1]| |
|552,553|$0228,$0229|[CDTMA2]| |
|554|$022A|[CDTMF3]| |
|555|$022B|[SRTIMR]| |
|556|$022C|[CDTMF4]| |
|557|$022D|[INTEMP]| |
|558|$022E|[CDTMF5]| |
|559|$022F|[SDMCTL]|Shadow of [DMACTL]| 
|560,561|$0230,$0231|[SDLSTL],[SDLSTH]| |
|562|$0233|[SSKCTL]| |
|563|$0233|[SPARE]| |A
|563|$0233|[LCOUNT]| |X
|564|$0234|[LPENH]| |
|565|$0235|[LPENV]| |
|566,567|$0236,$0237|[BRKKY]|Break key Interrupt vector|OS B/X?
|568,569|$0238,$0239| |two spare bytes|A
|568,569|$0238,$0239|[VPIRQ]| |X
|570|$023A|[CDEVIC]| |
|571|$023B|[CCOMND]| |
|572|$023C|[CAUX1]| |
|573|$023D|[CAUX2]| |
|574|$023E|[TEMP]| |
|575|$023F|[ERRFLG]| |
|576|$0240|[DFLAGS]| |
|577|$0241|[DESECT]| |
|578,579|$0242,$0243|[BOOTAD]| |
|580|$0244|[COLDST]| |
|581|$0245| |spare |A
|581|$0245|[RECLEN]| |X
|582|$0246|[DSKTIM]| |
|583-622|$0247-$026E|[LINBUF]| |A
|583|$0247|[PDVMSK]| |X
|584|$0248|[SHPDVS]| |X
|585|$0249|[PDIMSK]| |X
|586,587|$024A,$024B|[RELADR]| |X
|588|$024C|[PPTMPA]| |X
|589|$024D|[PPTMPX]| |X
|590-618|$024E-$026A| |reserved |X
|619|$026B|[CHSALT]| |X
|620|$026C|[VSFLAG]| |X
|621|$026D|[KEYDIS]| |X
|622|$026E|[FINE]|Fine Scroll Flag|X
|623|$026F|[GPRIOR]|Shadow of [PRIOR] |
|624|$0270|[PADDL0]| |
|625|$0271|[PADDL1]| |
|626|$0272|[PADDL2]| |
|627|$0273|[PADDL3]| |
|628|$0274|[PADDL4]| |
|629|$0275|[PADDL5]| |
|630|$0276|[PADDL6]| |
|631|$0277|[PADDL7]| |
|632|$0278|[STICK0]| |
|633|$0279|[STICK1]| |
|634|$027A|[STICK2]| |
|635|$027B|[STICK3]| |
|636|$027C|[PTRIG0]| |
|637|$027D|[PTRIG1]| |
|638|$027E|[PTRIG2]| |
|639|$027F|[PTRIG3]| |
|640|$0280|[PTRIG4]| |
|641|$0281|[PTRIG5]| |
|642|$0282|[PTRIG6]| |
|643|$0283|[PTRIG7]| |
|644|$0284|[STRIG0]| |
|645|$0285|[STRIG1]| |
|646|$0286|[STRIG2]| |
|647|$0287|[STRIG3]| |
|648|$0288|[CSTAT]| |A
|648|$0288|[HIBZTE]| |A
|649|$0289|[WMODE]| |
|650|$028A|[BLIM]| |
|651-655|$028B-$028F| |unused|A
|651|$028B|[IMASK]| |X
|652,653|$028C,$028D|[JVECK]| |X
|654,655|$028E,$028F|[NEWADR]| |X
|656|$0290|[TXTROW]| |
|657,658|$0291,$0292|[TXTCOL]| |
|659|$0293|[TINDEX]| |
|660,661|$0294,$0295|[TXTMSC]| |
|662-667|$0296-$029B|[TXTOLD]| |
|668|$029C|[TMPX1]| |A
|668|$029C|[CRETRY]| |X
|669|$029D|[HOLD3]| |
|670|$029E|[SUBTMP]| |
|671|$029F|[HOLD2]| |
|672|$02A0|[DMASK]| |
|673|$02A1|[TMPLBT]| |
|674|$02A2|[ESCFLG]| |
|675-689|$02A3-$02B1|[TABMAP]| |
|690-693|$02B2-$02B5|[LOGMAP]| |
|694|$02B6|[INVFLG]| |
|695|$02B7|[FILFLG]| |
|696|$02B8|[TMPROW]| |
|697,698|$02B9,$02BA|[TMPCOL]| |
|699|$02BB|[SCRFLG]| |
|700|$02BC|[HOLD4]| |
|701|$02BD|[HOLD5]| |A
|701|$02BD|[DRETRY]| |X
|702|$02BE|[SHFLOK]| |
|703|$02BF|[BOTSCR]| |
|704|$02C0|[PCOLR0]|Color of Player 0 and Missile 0 | both
|705  |  $02C1  |  [PCOLR1]  |  Color of Player 1 and Missile 1 | both
|706  |  $02C2  |  [PCOLR2]  |  Color of Player 3 and Missile 2 | both
|707  |  $02C3  |  [PCOLR3]  |  Color of Player 3 and Missile 3 | both
|708  |  $02C4  |  [COLOR0]  |  Color Register 0  | both
|709  |  $02C5  |  [COLOR1] | Color Register 1 | both
|710  |  $02C6  |  [COLOR2] | Color Register 2 | both
|711  |  $02C7  |  [COLOR3] | Color Register 3 | both
|712  |  $02C8  |  [COLOR4] | Color Register 4 | both
|713,714|$02C9,$02CA|[RUNADR]| |X
|715,716|$02CB,$02CC|[HIUSED]| |X
|717,718|$02CD,$02CE|[ZHIUSE]| |X
|719,720|$02CF,$02D0|[GBYTEA]| |X
|721,722|$02D1,$02D2|[LOADAD]| |X
|723,724|$02D3,$02D4|[ZLOADA]| |X
|725,726|$02D5,$02D6|[DSCTLN]| |X
|727,728|$02D7,$02D8|[ACMISR]| |X
|729|$2D9|[KRPDEL]| |X
|730|$2DA|[KEYREP]| |X
|731|$2DB|[NOCLIK]| |X
|732|$02FC|[HELPFG]| |X
|733|$02DD|[DMASAV]| |X
|734|$02DE|[PBPNT]| |X
|735|$02DF|[PBUFSZ]| |X
|736,737|$02E0,$02E1|[RUNAD]| |both
|738,739|$02E2,$02E3|[INITAD]| |both
|740|$02E4|[RAMSIZ]| |both
|741,742|$02E5,$02E6|[MEMTOP]| |both
|743,744|$02E7,$02E8|[MEMLO]| |both
|745|$02E9|[HNDLOD]| |X
|746-749|$02EA-$02ED|[DVSTAT]| |both
|750,751|$02EE,$02EF|[CBAUDL,CBAUDH]| |both
|752|$02F0|[CRSINH]|Cursor visibility|both
|753|$02F1|[KEYDEL]| |both
|754|$02F2|[CH1]| |both
|755|$02F3|[CHACT]| |both
|756|$02F4|[CHBAS]|Pointer to base address (high byte) of charset|both
|757|$02F5|[NEWROW]| |X
|758,759|$02F6,$02F7|[NEWCOL]| |X
|760|$02F8|[ROWINC]| |X
|761|$02F9|[COLINC]| |X
|762|$02FA|[CHAR]| |both
|763|$02FB|[ATACHR]| |both
|764|$02FC|[CH]| | both
|765|$02FD|[FILDAT]| |both
|766|$02FE|[DSPFLG]| |both
|767|$02FF|[SSFLAG]| |both

%%commentbox [^|Memory Map#TOP] %%
!Page 3
||adress||hexaddress||NAME||description||OS
|768|$0300|[DDEVIC]| |both
|769|$0301|[DUNIT]| |both
|770|$0302|[DCOMND]| |both
|771|$0303|[DSTATS]| |both
|772,773|$0304,$0305|[DBUFLO],[DBUFHI]| |both
|774|$0306|[DTIMLO]| |both
|775|$0307|[DUNUSE]| |both
|776,777|$0308,$0309|[DBYTLO],[DBYTHI]| |both
|778,779|$030A,$030B|[DAUX1],[DAUX2]| |both
|780,781|$030C,$030D|[TIMER1]| |both
|782|$030E|[ADDCOR]| |A
|782|$030E|[JMPERS]| |X
|783|$030F|[CASFLG]| |both
|784,785|$0310,$0311|[TIMER2]| |both
|786,787|$0312,$0313|[TEMP1]| |both
|788|$0314|[TEMP2]| |A
|788|$0314|[PTIMOT]| |X
|789|$0315|[TEMP3]| |both
|790|$0316|[SAVIO]| |both
|791|$0317|[TIMFLG]| |both
|792|$0318|[STACKP]| |both
|793|$0319|[TSTAT]| |both
|794-831|$031A-$033F|[HATABS]|38 Bytes Handler Address Table|both
|829|$033D|[PUPBT1]| |X
|830|$033E|[PUPBT2]| |X
|831|$033F|[PUPBT3]| |X
|832-847|$0340-$034F|[IOCB0]| |both
|848-863|$0350-$035F|[IOCB1]| |both
|864-879|$0360-$036F|[IOCB2]| |both
|880-895|$0370-$037F|[IOCB3]| |both
|896-911|$0380-$038F|[IOCB4]| |both
|912-927|$0390-$039F|[IOCB5]| |both
|928-943|$03A0-$03AF|[IOCB6]| |both
|944-959|$03B0-$03BF|[IOCB7]| |both
|960-999|$03C0-$03E7|[PRNBUF]| |both
|1000-1020|$03E8-$03FC| |reserved buffer|both
|1000|$03E8|[SUPERF]|Flag for function keys|1200XL
|1001|$03E9|[CKEY]| |X
|1002|$03EA|[CASSBT]| |X
|1003|$03EB|[CARTCK]| |X
|1004|$03EC|[DEERF]| |X
|1005-1015|$03ED-$03F7|[ACMVAR]| |X
|1016|$03F8|[BASICF]| |X
|1017|$03F9|[MINTLK]| |X
|1018|$03FA|[GINTLK]| |X
|1019,1020|$3FB,$3FC|[CHLINK]| |X

%%commentbox [^|Memory Map#Page 0] %%
!Page 4
||adress||hexaddress||NAME||description||OS
|1021-1151|$03FD-$047F|[CASBUF]| |both
|1152-1279|$0480-$04FF| |128 free bytes| 

%%commentbox [^|Memory Map#Page 0] %%
!Page 5
||address||hexaddress||NAME||description||OS
|1280-1405|$0500-$057D| | |
|1406|$057E|[LBPR1]|LBUFF prefix one| 
|1407|$057F|[LBPR2]|LBUFF prefix two| 
|1408-1535|$0580-$05FF|[LBUFF]|BASIC line Buffer | 
|1504|$05E0|[PLYARG]|Polynominal arguments| 
|1510-1515|$05E6-$05EB|[FPSCR]|Floating Point scratch pad use| 
|1516-1535|$05EC-$05FF|[FPSCR1]|Floating Point scratch pad use| 

%%commentbox [^|Memory Map#Page 0] %%
!Page 6
||address||hexaddress||NAME||description||OS
|1536-1791|$0600-$06FF| |"Page 6" free for user|both

%%commentbox [^|Memory Map#Page 0] %%
!Right Cartridge (B) 8K
||address||hexaddress||NAME||description||OS
|32768-40959|$8000-$9FFF| | |
|40954|$9FFA| |Cartridge Start Address low | 
|40955|$9FFB| |Cartridge Start Address high | 
|40956|$9FFC| |Cartridge present?| 
|40957|$9FFD| |Option Byte| 
|40958|$9FFE| |Cartridge Initialization Address low | 
|40959|$9FFF| |Cartridge Initialization Address high | 

%%commentbox [^|Memory Map#Page 0] %%
!Left Cartridge (A) 8K
||address||hexaddress||NAME||description||OS
|40960-49151|$A000-$BFFF| | |
|43234|$A8E2| |[shows revision of BASIC|How to find the revision number of Atari Basic]|
|49146|$BFFA| |Cartridge Start Address low | 
|49147|$BFFB| |Cartridge Start Address high | 
|49148|$BFFC| |Cartridge present?| 
|49149|$BFFD| |Option Byte| 
|49150|$BFFE| |Cartridge Initialization Address low | 
|49151|$BFFF| |Cartridge Initialization Address high | 

%%commentbox [^|Memory Map#Page 0] %%
![GTIA] (CTIA)
||adress||hexaddress||NAME||description||OS
|53248|$D000|[HPOSP0],[M0PF|HPOSP0]| |both
|53249|$D001|[HPOSP1],[M1PF|HPOSP1]| |both
|53250|$D002|[HPOSP2],[M2PF|HPOSP2]| |both
|53251|$D003|[HPOSP3],[M3PF|HPOSP3]| |both
|53252|$D004|[HPOSM0],[P0PF|HPOSM0]| |both
|53253|$D005|[HPOSM1],[P1PF|HPOSM1]| |both
|53254|$D006|[HPOSM2],[P2PF|HPOSM2]| |both
|53255|$D007|[HPOSM3],[P3PF|HPOSM3]| |both
|53256|$D008|[SIZEP0],[M0PL|SIZEP0]| |both
|53257|$D009|[SIZEP1],[M1PL|SIZEP1]| |both
|53258|$D00A|[SIZEP2],[M2PL|SIZEP2]| |both
|53259|$D00B|[SIZEP3],[M3PL|SIZEP3]| |both
|53260|$D00C|[SIZEM],[P0PL|SIZEM]| |both
|53261|$D00D|[GRAFP0],[P1PL|GRAFP0]| |both
|53262|$D00E|[GRAFP1],[P2PL|GRAFP1]| |both
|53263|$D00F|[GRAFP2],[P3PL|GRAFP2]| |both
|53264|$D010|[GRAFP3],[TRIG0|GRAFP3]| |both
|53265|$D011|[GRAFM],[TRIG1|GRAFM]| |both
|53266|$D012|[COLPM0],[TRIG2|COLPM0]| |both
|53267|$D013|[COLPM1],[TRIG3|COLPM1]| |both
|53268|$D014|[COLPM2],[PAL|COLPM2]| |both
|53269|$D015|[COLPM3]| |both
|53270|$D016|[COLPF0]| |both
|53271|$D017|[COLPF1]| |both
|53272|$D018|[COLPF2]| |both
|53273|$D019|[COLPF3]| |both
|53274|$D01A|[COLBK]| |both
|53275|$D01B|[PRIOR]| |both
|53276|$D01C|[VDELAY]| |both
|53277|$D01D|[GRACTL]| |both
|53278|$D01E|[HITCLR]| |both
|53279|$D01F|[CONSOL]| |both
|53280-53503|$D020-$D0FF| |repeats 53248-53279, do not use |

%%commentbox [^|Memory Map#Page 0] %%
|53504-53759|$D100-$D1FF| |reserved for future use|B

%%commentbox [^|Memory Map#Page 0] %%
!POKEY
||address||hexaddress||NAME||description||OS
|53760|$D200|[AUDF1],[POT0]| |
|53761|$D201|[AUDC1],[POT1]| |
|53762|$D202|[AUDF2],[POT2]| |
|53763|$D203|[AUDC2],[POT3]| |
|53764|$D204|[AUDF3],[POT4]| |
|53765|$D205|[AUDC3],[POT5]| |
|53766|$D206|[AUDF4],[POT6]| |
|53767|$D207|[AUDC4],[POT7]| |
|53768|$D208|[AUDCTL],[ALLPOT]| |
|53769|$D209|[STIMER|KBCODE],[KBCODE]| |
|53770|$D20A|[SKREST],[RANDOM|SKREST]| |
|53771|$D20B|[POTGO]| |
|53772|$D20C| |unused|
|53773|$D20D|[SEROUT],[SERIN|SEROUT]| |
|53774|$D20E|[IRQEN],[IRQST|IRQEN]| |
|53775|$D20F|[SKCTL],[SKSTAT|SKCTL]| |
|53776-54015|$D210-$D2FF| |repeats 53760-53775, no special use|

%%commentbox [^|Memory Map#Page 0] %%
!PIA
||address||hexaddress||NAME||description||OS
|54016|$D300|[PORTA]| | 
|54017|$D301|[PORTB]| |
|54018|$D302|[PACTL]| |
|54019|$D303|[PBCTL]| |
|54020-54271|$D304-$D3FF| |repeats 54016-54019, no special use |

%%commentbox [^|Memory Map#Page 0] %%
!ANTIC
||adress||hexaddress||NAME||description||OS
|54272|$D400|[DMACTL]| |
|54273|$D401|[CHACTL]| |
|54274,54275|$D402,$D403|[DLISTL],[DLISTH|DLISTL]| |
|54276|$D404|[HSCROL]| |
|54277|$D405|[VSCROL]| |
|54278|$D406| |unused|
|54279|$D407|[PMBASE]| |
|54280|$D408| |unused|
|54281|$D409|[CHBASE]| |
|54282|$D40A|[WSYNC]| |
|54283|$D40B|[VCOUNT]| |
|54284|$D40C|[PENH]| |
|54285|$D40D|[PENV]| |
|54286|$D40E|[NMIEN]| |
|54287|$D40F|[NMIST],[NMIRES|NMIST]| |
|54288-54303|$D410-$D41F| |repeats 54272-54287|

%%commentbox [^|Memory Map#Page 0] %%
||address||hexaddress||NAME||description||OS
| |$D600-$D6FF| |Any read or write to an address in this range enables the cartridge control line [CCNTL] on the cartridge interface (same as ATARI 400 and ATARI 800)|B

%%commentbox [^|Memory Map#Page 0] %%
||address||hexaddress||NAME||description||OS
| |$D600-$D6FF| |reserved for future use|B

%%commentbox [^|Memory Map#Page 0] %%
||address||hexaddress||NAME||description||OS
| |$D700-$D7FF| |reserved for future use|B

%%commentbox [^|Memory Map#Page 0] %%
!OS ROM
||address||hexaddress||NAME||description||OS
|55296|$D800|[AFP]|ASCII to Floating Point (FP) conversion| 
|55526|$D8E6|[FASC]|FP value to ASCII conversion|
|55722|$D9AA|[IFP]|Integer to FP conversion|
|55762|$D9D2|[FPI]|FP to integer conversion|
|55876|$DA44|[ZFR0]|Clear [FR0] at 212 to 217 ($d$-$DB) by setting all bytes to zero|
|55878|$DA46|[ZF1]|Clear the FP number from [FR1], locations 224 to 229 ($E0 to $E5), by setting all bytes to zero.|
|55904|$DA60|[FSUB]|FP subtract routine, the value in [FR0] minus the value in [FR1].|
|55910|$DA66|[FADD]|FP addition routine; [FR0] plus [FR1].|
|56027|$DADB|[FMUL]|FP multiplication routine; [FR0] times [FR1].|
|56104|$DB28|[FDIV]|FP division routine; [FR0] divided by [FR1].|
|56640|$DD40|[PLYEVL]|FP polynomial evaluation.|
|56713|$DD89|[FLD0R]|Load the FP number into [FR0] from the 6502 X,Y registers.|
|56717|$DD8D|[FLD0P]|Load the FP number into [FR0] from user routine, using [FLPTR] at 252 ($FC).|
|56728|$DD98|[FLD1R]|Load the FP number into [FR1] from the 6502 X,Y registers.|
|56732|$DD9C|[FLD1P]|Load the FP number into [FR1] from user program, using [FLPTR].|
|56743|$DDA7|[FSTOR]|Store the FP number into the 6502 X,Y registers from [FR0].|
|56747|$DDAB|[FSTOP]|Store the FP number from [FR0], using [FLPTR].|
|56758|$DDB6|[FMOVE]|Move the FP number from [FR0] to [FR1].|
|56768|$DDC0|[EXP]|FP base e exponentiation.|
|56780|$DDCC|[EXP10]|FP base 10 exponentiation.|
|57037|$DECD|[LOG]|FP natural logarithm.|
|57041|$DED1|[LOG10]|FP base 10 logarithm.|
| | | | |
|57344|$E000| |Standard ATARI character set, beginning with punctuations and numbers|
|57600|$E100| |capital letters|
|57856|$E200| |special graphics|
|58112|$E300| |lower case letters|
|58367|$E3FF| |end of ATARI standard charset|
| | | | |
|58368|$E400|[EDITRV]|Screen editor (E:) entry point table|
|58348|$E410|[SCRENV]|Display handler (television screen) (S:)|
|58400|$E420|[KEYBDV]|Jump Table for Keyboard driver "K:"|OSA/OSB/XL
|58416|$E430|[PRINTV]|Printer handler (P:)|
|58432|$E440|[CASETV]|Cassette handler (C:)|
|58448|$E450|[DISKIV]|Disk handler initialization vector, initialized to 60906 ($EDEA)|
|58451|$E453|[DSKINV]|Disk handler (interface) entry; checks the disk status. Initialized to 60912 ($EDF0).|
|58454|$E456|[CIOV]| |
|58457|$E459|[SIOV]| |
|58460|$E45C|[SETVBV]| |
|58463|$E45F|[SYSVBV]| |
|58466|$E462|[XITVBV]|Exit from the VBLANK routine|
|58469|$E465|[SIOINV]|SIO utility initialisation, OS use only|
|58472|$E468|[SENDEV]|Send enable routine, OS use only|
|58475|$E46B|[INTINV]|Interrupt handler initialisation, OS use only|
|58478|$E46E|[CIOINV]|CIO utility initialisation, OS Use only|
|58481|$E471|[BLKBDV]|Blackbaord Mode Entry|
|58484|$E474|[WARMSV]|Warm Start Vector|
|58487|$E477|[COLDSV]|Cold Start Vector|
|58490|$E47A|[RBLOKV]|reads block from C:|
|58493|$E47D|[CSOPIV]|opens channel for C:|
|58496|$E480|[PUPDIV]|Vector for Self Test|X
|58499|$E483|[SLFTSV]| |X
|58502|$E486|[PHENTV]| |X
|58505|$E489|[PHULNV]| |X
|58508|$E48C|[PHINIV]| |X
|58511|$E48F|[GPDVV]| |X
| | | | |
| | | | |to be completed ...
| | | | |
|59310|$E7AE|[SYSVBL]|X|
|59345|$E7D1|[SYSVBL]|A|
| | | | |
|65527|$FFF7| |[can be used to identify OS version|OS Versions]|
|65528|$FFF8|[CHKSUN]|[can be used to identify OS version|OS Versions]|
|65530,65531|$FFFA,$FFFB|[PVECT]| |