universal monitor unimon: porting to 6502+MC6850 on SBC6800 / https://electrelic.com/electrelic/node/1317
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| ;;; -*- asm -*- | |
| ;;; | |
| ;;; Universal Monitor 6502 config file (sample) | |
| ;;; | |
| ;;; | |
| ;;; Memory | |
| ;;; | |
| ROM_B: EQU $E000 ; original $F800 | |
| ENTRY: EQU $FF80 ; Entry point | |
| WORK_B: EQU $0000 ; Must fit in ZERO page | |
| STACK: EQU $01FF | |
| BUFLEN: EQU 16 ; Buffer length ( 16 or above ) | |
| ;;; | |
| ;;; Options | |
| ;;; | |
| USE_IDENT = 1 ; CPU Identification | |
| USE_REGCMD = 1 ; Register related commands | |
| ;;; | |
| ;;; | |
| ;;; Motorola MC6850 | |
| ;;; | |
| USE_DEV_6850 = 1 | |
| IF USE_DEV_6850 | |
| ACIADR: EQU $8019 ; Data Register | |
| ACIACR: EQU $8018 ; Control Register | |
| ACCR_I: EQU $03 ; Command: reset | |
| ACCR_V: EQU $15 ; Command: 8bit, 1-stopbit, No-parity, IRQ disable | |
| ENDIF | |
| ;;; MOS Technology MCS6551 | |
| ;;; | |
| USE_DEV_6551 = 0 | |
| IF USE_DEV_6551 | |
| ;; | |
| ACIADR: EQU $8000 ; Data Register | |
| ACIASR: EQU $8001 ; Status Register | |
| ACIACM: EQU $8002 ; Command Register | |
| ACIACR: EQU $8003 ; Control Register | |
| ACCR_V: EQU $1E ; Control: 8bit, 9600bps | |
| ACCM_V: EQU $0B ; Command: No-parity | |
| ENDIF | |
| ;;; | |
| ;;; EMILY Board (Shared Memory) | |
| ;;; | |
| USE_DEV_EMILY = 0 | |
| IF USE_DEV_EMILY | |
| ;; | |
| SMBASE: EQU $FFE0 | |
| ENDIF |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| ;;; | |
| ;;; M6850 Console Driver | |
| ;;; | |
| INIT: | |
| LDA #ACCR_I | |
| STA ACIACR | |
| LDA #ACCR_V | |
| STA ACIACR | |
| RTS | |
| CONIN: | |
| LDA ACIACR | |
| AND #$01 | |
| BEQ CONIN | |
| LDA ACIADR | |
| RTS | |
| CONST: | |
| LDA ACIACR | |
| AND #$01 | |
| RTS | |
| CONOUT: | |
| PHA | |
| CO0: | |
| LDA ACIACR | |
| LSR | |
| LSR | |
| BCC CO0 | |
| PLA | |
| STA ACIADR | |
| RTS |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| IF USE_DEV_6850 | |
| INCLUDE "dev/dev_6850.asm" | |
| ENDIF |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| :10E00000A2FF9A20D8E5A9008510851185178518EB | |
| :10E0100085158516851BA9538519A900851C851DA5 | |
| :10E02000851E852085218522BA861FA9D48527A92A | |
| :10E03000E4852820D1E38018F818A9056905C90AE4 | |
| :10E04000D8F02DA9368527A9E58528A9004C7AE0C6 | |
| :10E050000FA9108FA90DA93D8527A9E58528A9013C | |
| :10E060004C7AE0A9458527A9E58528A9034C7AE0E3 | |
| :10E07000A94E8527A9E58528A910851B20D1E3A9EC | |
| :10E08000EF8527A9E4852820D1E32001E4A2002020 | |
| :10E090004AE42055E4C900F0E6C944D0034CC3E08B | |
| :10E0A000C947D0034CF5E1C953D0034C22E2C95211 | |
| :10E0B000D0034CAAE2A90C8527A9E5852820D1E345 | |
| :10E0C0004C7FE0E8204AE42060E4A52BD017204AEA | |
| :10E0D000E4B500D0E0A5101869808512A51169008B | |
| :10E0E00085134C1CE1A5298510A52A8511204AE439 | |
| :10E0F000B500C92CF007C900D0BB4CD5E0E8204AD8 | |
| :10E10000E42060E4204AE4A52BF0AAB500D0A6A53F | |
| :10E11000293869008512A52A69008513A51029F000 | |
| :10E120008529A511852AA9008514205BE1A5291858 | |
| :10E1300069108529A52A6900852A20EEE5D011A558 | |
| :10E1400014C90290E5A5128510A51385114C7FE036 | |
| :10E15000A5298510A52A85114C7FE0A52A20DFE39B | |
| :10E16000A52920DFE3A9148527A9E5852820D1E387 | |
| :10E17000A200A00020A5E1E010D0F9A9178527A9E9 | |
| :10E18000E5852820D1E3A200B500C920900AC97F07 | |
| :10E19000B00620F4E54C9DE1A92E20F4E5E8E0105E | |
| :10E1A000D0E64CF7E3A92020F4E5A514D01B98385D | |
| :10E1B000E510290FF00FA920950020F4E5A92020F3 | |
| :10E1C000F4E5E8C860A9018514A514C901D0E7B138 | |
| :10E1D00029950020DFE3E8C8981865298527A52A36 | |
| :10E1E00069008528A527C512D00AA528C513D00423 | |
| :10E1F000A902851460E8204AE42060E4B500F00339 | |
| :10E200004CB5E0A52BF008A5298520A52A8521A6D7 | |
| :10E210001F9AA52148A52048A52248A51CA61DA4F3 | |
| :10E220001E40E8204AE42060E4204AE4B500F00300 | |
| :10E230004CB5E0A52BF008A5298517A52A8518A5BA | |
| :10E240001820DFE3A51720DFE3A9178527A9E585B7 | |
| :10E250002820D1E3A000B11720DFE3A92020F4E5B6 | |
| :10E260002001E4A200204AE4B500D010A5171869E7 | |
| :10E27000018517A518690085184C3FE2C92DD010FB | |
| :10E28000A51738E9018517A518E90085184C3FE264 | |
| :10E29000C92ED0034C7FE02060E4A52BD0034CB501 | |
| :10E2A000E0A529A00091174C6CE2E8204AE4205533 | |
| :10E2B000E4C900D0062069E34C7FE0A07A8429A05D | |
| :10E2C000E5842AA000D129F013C848B129F00968D3 | |
| :10E2D000C8C8C8C8C84CC5E2684CB5E0C8B129C9AF | |
| :10E2E00080D019C8B129852BC8B129852AA52B85CD | |
| :10E2F00029A000E8B5002055E44CC5E2C900F0664D | |
| :10E30000C8B129AAC8C8B1298527C8B129852884D8 | |
| :10E310002B20D1E3A93D20F4E5A42B88888888B17F | |
| :10E32000298523C901D008B50020DFE34C39E3B5C6 | |
| :10E330000120DFE3B50020DFE3A92020F4E58626F5 | |
| :10E340002001E4A2002060E4A52BF017A626A52357 | |
| :10E35000C901D007A52995004C63E3A5299500A51F | |
| :10E360002A95014C7FE04CB5E0A95D8527A9E5859C | |
| :10E370002820D1E3A51C20DFE3A9608527A9E58536 | |
| :10E380002820D1E3A51D20DFE3A9648527A9E58521 | |
| :10E390002820D1E3A51E20DFE3A9688527A9E5850C | |
| :10E3A0002820D1E3A51F20DFE3A96F8527A9E585F4 | |
| :10E3B0002820D1E3A52120DFE3A52020DFE3A974F5 | |
| :10E3C0008527A9E5852820D1E3A52220DFE34CF7A6 | |
| :10E3D000E3A000B127F00720F4E5C84CD3E3604880 | |
| :10E3E0004A4A4A4A20E8E368290F186930C93A9036 | |
| :10E3F000031869074CF4E5A90D20F4E5A90A4CF4CB | |
| :10E40000E5A20020E3E5C90DF038C90AF034C908D7 | |
| :10E41000F019C97FF015C92090E9C980B0E5E00F77 | |
| :10E42000B0E19500E820F4E54C03E4E000F0D4CA44 | |
| :10E43000A90820F4E5A92020F4E5A90820F4E54C7A | |
| :10E4400003E420F7E3A900950060B500C920D004DB | |
| :10E45000E84C4AE460C9619006C97BB00269E0609B | |
| :10E46000A9008529852A852BB5002055E4C930905F | |
| :10E470002DC93A900BC9419025C947B02138E90709 | |
| :10E4800038E9300629262A0629262A0629262A06B8 | |
| :10E4900029262A1865298529E62BE84C68E4604876 | |
| :10E4A00008682910F02CD868851C8A851D98851E5F | |
| :10E4B0006885226838E902852068E9008521BA86E6 | |
| :10E4C0001FA9578527A9E5852820D1E32069E34CBA | |
| :10E4D0007FE068400D0A556E6976657273616C2045 | |
| :10E4E0004D6F6E69746F7220363530320D0A005DE3 | |
| :10E4F00020004572726F7220696865780D0A0045C8 | |
| :10E5000072726F7220737265630D0A004572726FCA | |
| :10E51000720D0A00203A00203A20003A30303030A4 | |
| :10E520003030303146460D0A005339303330303008 | |
| :10E530003046430D0A00363530320D0A0036354379 | |
| :10E5400030320D0A005236354330320D0A00525037 | |
| :10E55000324130330D0A0042524B0D0A00413D005A | |
| :10E5600020583D0020593D002053503D30310020BF | |
| :10E5700050433D00205053523D0041011C00C8E56E | |
| :10E5800058011D00CAE559011E00CCE553809EE5E7 | |
| :10E5900000005080AAE500000000000000005001CB | |
| :10E5A0001F00CEE500000000000043022000D1E57E | |
| :10E5B0005380BCE500000000000000005201220072 | |
| :10E5C000D4E50000000000004100580059005350FD | |
| :10E5D0000050430050535200A9038D1880A9158D97 | |
| :10E5E000188060AD18802901F0F9AD198060AD1870 | |
| :10E5F0008029016048AD18804A4A90F9688D1980D9 | |
| :01E6000060B9 | |
| :03FF80004C00E052 | |
| :03FF88004C7FE0CB | |
| :03FF90004CF4E549 | |
| :03FF98004CD1E366 | |
| :03FFA0004CE3E54A | |
| :03FFA8004CEEE537 | |
| :06FFFA00000000E09FE49E | |
| :00000001FF |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| AS V1.42 Beta [Bld 158] - Source File unimon_6502.asm - Page 1 - 04/08/20 16:57:26 | |
| 1/ 0 : ;;; | |
| 2/ 0 : ;;; Universal Monitor 6502 | |
| 3/ 0 : ;;; Copyright (C) 2019 Haruo Asano | |
| 4/ 0 : ;;; | |
| 5/ 0 : | |
| 6/ 0 : CPU 6502 | |
| 7/ 0 : | |
| 8/ 0 : =6502 TARGET: EQU "6502" | |
| 9/ 0 : | |
| 10/ 0 : INCLUDE "config.inc" | |
| (1) 1/ 0 : ;;; -*- asm -*- | |
| (1) 2/ 0 : ;;; | |
| (1) 3/ 0 : ;;; Universal Monitor 6502 config file (sample) | |
| (1) 4/ 0 : ;;; | |
| (1) 5/ 0 : | |
| (1) 6/ 0 : ;;; | |
| (1) 7/ 0 : ;;; Memory | |
| (1) 8/ 0 : ;;; | |
| (1) 9/ 0 : | |
| (1) 10/ 0 : =$E000 ROM_B: EQU $E000 ; original $F800 | |
| (1) 11/ 0 : =$FF80 ENTRY: EQU $FF80 ; Entry point | |
| (1) 12/ 0 : | |
| (1) 13/ 0 : =$0 WORK_B: EQU $0000 ; Must fit in ZERO page | |
| (1) 14/ 0 : =$1FF STACK: EQU $01FF | |
| (1) 15/ 0 : | |
| (1) 16/ 0 : =$10 BUFLEN: EQU 16 ; Buffer length ( 16 or above ) | |
| (1) 17/ 0 : | |
| (1) 18/ 0 : ;;; | |
| (1) 19/ 0 : ;;; Options | |
| (1) 20/ 0 : ;;; | |
| (1) 21/ 0 : | |
| (1) 22/ 0 : =$1 USE_IDENT = 1 ; CPU Identification | |
| (1) 23/ 0 : =$1 USE_REGCMD = 1 ; Register related commands | |
| (1) 24/ 0 : | |
| (1) 25/ 0 : ;;; | |
| (1) 26/ 0 : ;;; | |
| (1) 27/ 0 : ;;; Motorola MC6850 | |
| (1) 28/ 0 : ;;; | |
| (1) 29/ 0 : | |
| (1) 30/ 0 : =$1 USE_DEV_6850 = 1 | |
| (1) 31/ 0 : =>TRUE IF USE_DEV_6850 | |
| (1) 32/ 0 : =$8019 ACIADR: EQU $8019 ; Data Register | |
| (1) 33/ 0 : =$8018 ACIACR: EQU $8018 ; Control Register | |
| (1) 34/ 0 : =$3 ACCR_I: EQU $03 ; Command: reset | |
| (1) 35/ 0 : =$15 ACCR_V: EQU $15 ; Command: 8bit, 1-stopbit, No-parity, IRQ disable | |
| (1) 36/ 0 : [31] ENDIF | |
| (1) 37/ 0 : | |
| (1) 38/ 0 : ;;; MOS Technology MCS6551 | |
| (1) 39/ 0 : ;;; | |
| (1) 40/ 0 : | |
| (1) 41/ 0 : =$0 USE_DEV_6551 = 0 | |
| (1) 42/ 0 : =>FALSE IF USE_DEV_6551 | |
| (1) 43/ 0 : ;; | |
| (1) 44/ 0 : ACIADR: EQU $8000 ; Data Register | |
| (1) 45/ 0 : ACIASR: EQU $8001 ; Status Register | |
| (1) 46/ 0 : ACIACM: EQU $8002 ; Command Register | |
| (1) 47/ 0 : ACIACR: EQU $8003 ; Control Register | |
| (1) 48/ 0 : ACCR_V: EQU $1E ; Control: 8bit, 9600bps | |
| (1) 49/ 0 : ACCM_V: EQU $0B ; Command: No-parity | |
| (1) 50/ 0 : [42] ENDIF | |
| AS V1.42 Beta [Bld 158] - Source File unimon_6502.asm(config.inc) - Page 2 - 04/08/20 16:57:26 | |
| (1) 51/ 0 : | |
| (1) 52/ 0 : ;;; | |
| (1) 53/ 0 : ;;; EMILY Board (Shared Memory) | |
| (1) 54/ 0 : ;;; | |
| (1) 55/ 0 : | |
| (1) 56/ 0 : =$0 USE_DEV_EMILY = 0 | |
| (1) 57/ 0 : =>FALSE IF USE_DEV_EMILY | |
| (1) 58/ 0 : ;; | |
| (1) 59/ 0 : SMBASE: EQU $FFE0 | |
| (1) 60/ 0 : [57] ENDIF | |
| (1) 61/ 0 : | |
| 11/ 0 : | |
| 12/ 0 : INCLUDE "../common.inc" | |
| (1) 1/ 0 : ;;; -*- asm -*- | |
| (1) 2/ 0 : ;;; | |
| (1) 3/ 0 : ;;; Common header file | |
| (1) 4/ 0 : ;;; | |
| (1) 5/ 0 : | |
| (1) 6/ 0 : RELAXED ON | |
| (1) 7/ 0 : | |
| (1) 8/ 0 : ;;; Constants | |
| (1) 9/ 0 : =$D CR: EQU 0x0D | |
| (1) 10/ 0 : =$A LF: EQU 0x0A | |
| (1) 11/ 0 : =$8 BS: EQU 0x08 | |
| (1) 12/ 0 : =$7F DEL: EQU 0x7F | |
| (1) 13/ 0 : | |
| (1) 14/ 0 : ;;; Functions | |
| (1) 15/ 0 : low function x,(x & 255) | |
| (1) 16/ 0 : high function x,(x >> 8) | |
| (1) 17/ 0 : | |
| (1) 18/ 0 : RELAXED OFF | |
| (1) 19/ 0 : | |
| 13/ 0 : | |
| 14/ 0 : ;;; | |
| 15/ 0 : ;;; ROM area | |
| 16/ 0 : ;;; | |
| 17/ 0 : | |
| 18/ E000 : ORG ROM_B | |
| 19/ E000 : | |
| 20/ E000 : CSTART: | |
| 21/ E000 : A2 FF LDX #low(STACK) | |
| 22/ E002 : 9A TXS | |
| 23/ E003 : 20 D8 E5 JSR INIT | |
| 24/ E006 : | |
| 25/ E006 : A9 00 LDA #$00 | |
| 26/ E008 : 85 10 STA DSADDR | |
| 27/ E00A : 85 11 STA DSADDR+1 | |
| 28/ E00C : 85 17 STA SADDR | |
| 29/ E00E : 85 18 STA SADDR+1 | |
| 30/ E010 : 85 15 STA GADDR | |
| 31/ E012 : 85 16 STA GADDR+1 | |
| 32/ E014 : 85 1B STA PSPEC | |
| 33/ E016 : A9 53 LDA #'S' | |
| 34/ E018 : 85 19 STA HEXMOD | |
| 35/ E01A : | |
| 36/ E01A : =>TRUE IF USE_REGCMD | |
| 37/ E01A : A9 00 LDA #$00 | |
| 38/ E01C : 85 1C STA REGA | |
| 39/ E01E : 85 1D STA REGX | |
| 40/ E020 : 85 1E STA REGY | |
| AS V1.42 Beta [Bld 158] - Source File unimon_6502.asm - Page 3 - 04/08/20 16:57:26 | |
| 41/ E022 : 85 20 STA REGPC | |
| 42/ E024 : 85 21 STA REGPC+1 | |
| 43/ E026 : 85 22 STA REGPSR | |
| 44/ E028 : BA TSX | |
| 45/ E029 : 86 1F STX REGSP | |
| 46/ E02B : [36] ENDIF | |
| 47/ E02B : | |
| 48/ E02B : ;; Opening message | |
| 49/ E02B : A9 D4 LDA #low(OPNMSG) | |
| 50/ E02D : 85 27 STA PT0 | |
| 51/ E02F : A9 E4 LDA #high(OPNMSG) | |
| 52/ E031 : 85 28 STA PT0+1 | |
| 53/ E033 : 20 D1 E3 JSR STROUT | |
| 54/ E036 : | |
| 55/ E036 : ;; CPU identification | |
| 56/ E036 : =>TRUE IF USE_IDENT | |
| 57/ E036 : 80 18 FCB $80,ID65C-*-2 ; BRA ID65C on 65C02, NOP #xx on 6502 | |
| 58/ E038 : | |
| 59/ E038 : F8 SED | |
| 60/ E039 : 18 CLC | |
| 61/ E03A : A9 05 LDA #5 | |
| 62/ E03C : 69 05 ADC #5 | |
| 63/ E03E : C9 0A CMP #10 | |
| 64/ E040 : D8 CLD | |
| 65/ E041 : F0 2D BEQ ID2A03 | |
| 66/ E043 : ;; 6502 | |
| 67/ E043 : A9 36 LDA #low(IM65) | |
| 68/ E045 : 85 27 STA PT0 | |
| 69/ E047 : A9 E5 LDA #high(IM65) | |
| 70/ E049 : 85 28 STA PT0+1 | |
| 71/ E04B : A9 00 LDA #$00 | |
| 72/ E04D : 4C 7A E0 JMP IDE | |
| 73/ E050 : ;; 65C02 | |
| 74/ E050 : ID65C: | |
| 75/ E050 : 0F A9 10 FCB $0F,$A9,IDR65C-*-3 ; BBR0 $A9,IDR65C on R65C02, NOP / LDA,#xx on 65C02 | |
| 76/ E053 : 8F A9 0D FCB $8F,$A9,IDR65C-*-3 ; BBS0 $A9,IDR65C on R65C02, NOP / LDA,#xx on 65C02 | |
| 77/ E056 : | |
| 78/ E056 : A9 3D LDA #low(IM65C) | |
| 79/ E058 : 85 27 STA PT0 | |
| 80/ E05A : A9 E5 LDA #high(IM65C) | |
| 81/ E05C : 85 28 STA PT0+1 | |
| 82/ E05E : A9 01 LDA #$01 | |
| 83/ E060 : 4C 7A E0 JMP IDE | |
| 84/ E063 : ;; R65C02 | |
| 85/ E063 : IDR65C: | |
| 86/ E063 : A9 45 LDA #low(IMR65C) | |
| 87/ E065 : 85 27 STA PT0 | |
| 88/ E067 : A9 E5 LDA #high(IMR65C) | |
| 89/ E069 : 85 28 STA PT0+1 | |
| 90/ E06B : A9 03 LDA #$03 | |
| 91/ E06D : 4C 7A E0 JMP IDE | |
| 92/ E070 : ;; RP2A03 | |
| 93/ E070 : ID2A03: | |
| 94/ E070 : A9 4E LDA #low(IM2A03) | |
| 95/ E072 : 85 27 STA PT0 | |
| 96/ E074 : A9 E5 LDA #high(IM2A03) | |
| 97/ E076 : 85 28 STA PT0+1 | |
| 98/ E078 : A9 10 LDA #$10 | |
| 99/ E07A : IDE: | |
| 100/ E07A : 85 1B STA PSPEC | |
| AS V1.42 Beta [Bld 158] - Source File unimon_6502.asm - Page 4 - 04/08/20 16:57:26 | |
| 101/ E07C : 20 D1 E3 JSR STROUT | |
| 102/ E07F : [56] ENDIF | |
| 103/ E07F : | |
| 104/ E07F : WSTART: | |
| 105/ E07F : A9 EF LDA #low(PROMPT) | |
| 106/ E081 : 85 27 STA PT0 | |
| 107/ E083 : A9 E4 LDA #high(PROMPT) | |
| 108/ E085 : 85 28 STA PT0+1 | |
| 109/ E087 : 20 D1 E3 JSR STROUT | |
| 110/ E08A : 20 01 E4 JSR GETLIN | |
| 111/ E08D : A2 00 LDX #0 | |
| 112/ E08F : 20 4A E4 JSR SKIPSP | |
| 113/ E092 : 20 55 E4 JSR UPPER | |
| 114/ E095 : C9 00 CMP #0 | |
| 115/ E097 : F0 E6 BEQ WSTART | |
| 116/ E099 : | |
| 117/ E099 : C9 44 CMP #'D' | |
| 118/ E09B : D0 03 BNE M00 | |
| 119/ E09D : 4C C3 E0 JMP DUMP | |
| 120/ E0A0 : M00: | |
| 121/ E0A0 : C9 47 CMP #'G' | |
| 122/ E0A2 : D0 03 BNE M01 | |
| 123/ E0A4 : 4C F5 E1 JMP GO | |
| 124/ E0A7 : M01: | |
| 125/ E0A7 : C9 53 CMP #'S' | |
| 126/ E0A9 : D0 03 BNE M02 | |
| 127/ E0AB : 4C 22 E2 JMP SETM | |
| 128/ E0AE : M02: | |
| 129/ E0AE : | |
| 130/ E0AE : =>TRUE IF USE_REGCMD | |
| 131/ E0AE : C9 52 CMP #'R' | |
| 132/ E0B0 : D0 03 BNE M05 | |
| 133/ E0B2 : 4C AA E2 JMP REG | |
| 134/ E0B5 : [130] ENDIF | |
| 135/ E0B5 : M05: | |
| 136/ E0B5 : ERR: | |
| 137/ E0B5 : A9 0C LDA #low(ERRMSG) | |
| 138/ E0B7 : 85 27 STA PT0 | |
| 139/ E0B9 : A9 E5 LDA #high(ERRMSG) | |
| 140/ E0BB : 85 28 STA PT0+1 | |
| 141/ E0BD : 20 D1 E3 JSR STROUT | |
| 142/ E0C0 : 4C 7F E0 JMP WSTART | |
| 143/ E0C3 : | |
| 144/ E0C3 : ;;; | |
| 145/ E0C3 : ;;; Dump memory | |
| 146/ E0C3 : ;;; | |
| 147/ E0C3 : DUMP: | |
| 148/ E0C3 : E8 INX | |
| 149/ E0C4 : 20 4A E4 JSR SKIPSP | |
| 150/ E0C7 : 20 60 E4 JSR RDHEX | |
| 151/ E0CA : A5 2B LDA CNT | |
| 152/ E0CC : D0 17 BNE DP0 | |
| 153/ E0CE : | |
| 154/ E0CE : ;; No arg. | |
| 155/ E0CE : 20 4A E4 JSR SKIPSP | |
| 156/ E0D1 : B5 00 LDA INBUF,X | |
| 157/ E0D3 : D0 E0 BNE ERR | |
| 158/ E0D5 : DP00: | |
| 159/ E0D5 : A5 10 LDA DSADDR | |
| 160/ E0D7 : 18 CLC | |
| AS V1.42 Beta [Bld 158] - Source File unimon_6502.asm - Page 5 - 04/08/20 16:57:26 | |
| 161/ E0D8 : 69 80 ADC #128 | |
| 162/ E0DA : 85 12 STA DEADDR | |
| 163/ E0DC : A5 11 LDA DSADDR+1 | |
| 164/ E0DE : 69 00 ADC #0 | |
| 165/ E0E0 : 85 13 STA DEADDR+1 | |
| 166/ E0E2 : 4C 1C E1 JMP DPM | |
| 167/ E0E5 : | |
| 168/ E0E5 : ;; 1st arg. found | |
| 169/ E0E5 : DP0: | |
| 170/ E0E5 : A5 29 LDA PT1 | |
| 171/ E0E7 : 85 10 STA DSADDR | |
| 172/ E0E9 : A5 2A LDA PT1+1 | |
| 173/ E0EB : 85 11 STA DSADDR+1 | |
| 174/ E0ED : 20 4A E4 JSR SKIPSP | |
| 175/ E0F0 : B5 00 LDA INBUF,X | |
| 176/ E0F2 : C9 2C CMP #',' | |
| 177/ E0F4 : F0 07 BEQ DP1 | |
| 178/ E0F6 : C9 00 CMP #0 | |
| 179/ E0F8 : D0 BB BNE ERR | |
| 180/ E0FA : ;; No 2nd arg. | |
| 181/ E0FA : 4C D5 E0 JMP DP00 | |
| 182/ E0FD : DP1: | |
| 183/ E0FD : E8 INX | |
| 184/ E0FE : 20 4A E4 JSR SKIPSP | |
| 185/ E101 : 20 60 E4 JSR RDHEX | |
| 186/ E104 : 20 4A E4 JSR SKIPSP | |
| 187/ E107 : A5 2B LDA CNT | |
| 188/ E109 : F0 AA BEQ ERR | |
| 189/ E10B : B5 00 LDA INBUF,X | |
| 190/ E10D : D0 A6 BNE ERR | |
| 191/ E10F : A5 29 LDA PT1 | |
| 192/ E111 : 38 SEC | |
| 193/ E112 : 69 00 ADC #0 | |
| 194/ E114 : 85 12 STA DEADDR | |
| 195/ E116 : A5 2A LDA PT1+1 | |
| 196/ E118 : 69 00 ADC #0 | |
| 197/ E11A : 85 13 STA DEADDR+1 | |
| 198/ E11C : | |
| 199/ E11C : ;; DUMP main | |
| 200/ E11C : DPM: | |
| 201/ E11C : A5 10 LDA DSADDR | |
| 202/ E11E : 29 F0 AND #$F0 | |
| 203/ E120 : 85 29 STA PT1 | |
| 204/ E122 : A5 11 LDA DSADDR+1 | |
| 205/ E124 : 85 2A STA PT1+1 | |
| 206/ E126 : A9 00 LDA #0 | |
| 207/ E128 : 85 14 STA DSTATE | |
| 208/ E12A : DPM0: | |
| 209/ E12A : 20 5B E1 JSR DPL | |
| 210/ E12D : A5 29 LDA PT1 | |
| 211/ E12F : 18 CLC | |
| 212/ E130 : 69 10 ADC #16 | |
| 213/ E132 : 85 29 STA PT1 | |
| 214/ E134 : A5 2A LDA PT1+1 | |
| 215/ E136 : 69 00 ADC #0 | |
| 216/ E138 : 85 2A STA PT1+1 | |
| 217/ E13A : 20 EE E5 JSR CONST | |
| 218/ E13D : D0 11 BNE DPM1 | |
| 219/ E13F : A5 14 LDA DSTATE | |
| 220/ E141 : C9 02 CMP #2 | |
| AS V1.42 Beta [Bld 158] - Source File unimon_6502.asm - Page 6 - 04/08/20 16:57:26 | |
| 221/ E143 : 90 E5 BCC DPM0 | |
| 222/ E145 : A5 12 LDA DEADDR | |
| 223/ E147 : 85 10 STA DSADDR | |
| 224/ E149 : A5 13 LDA DEADDR+1 | |
| 225/ E14B : 85 11 STA DSADDR+1 | |
| 226/ E14D : 4C 7F E0 JMP WSTART | |
| 227/ E150 : DPM1: | |
| 228/ E150 : A5 29 LDA PT1 | |
| 229/ E152 : 85 10 STA DSADDR | |
| 230/ E154 : A5 2A LDA PT1+1 | |
| 231/ E156 : 85 11 STA DSADDR+1 | |
| 232/ E158 : 4C 7F E0 JMP WSTART | |
| 233/ E15B : | |
| 234/ E15B : ;; Dump line | |
| 235/ E15B : DPL: | |
| 236/ E15B : A5 2A LDA PT1+1 | |
| 237/ E15D : 20 DF E3 JSR HEXOUT2 | |
| 238/ E160 : A5 29 LDA PT1 | |
| 239/ E162 : 20 DF E3 JSR HEXOUT2 | |
| 240/ E165 : A9 14 LDA #low(DSEP0) | |
| 241/ E167 : 85 27 STA PT0 | |
| 242/ E169 : A9 E5 LDA #high(DSEP0) | |
| 243/ E16B : 85 28 STA PT0+1 | |
| 244/ E16D : 20 D1 E3 JSR STROUT | |
| 245/ E170 : A2 00 LDX #0 | |
| 246/ E172 : A0 00 LDY #0 | |
| 247/ E174 : DPL0: | |
| 248/ E174 : 20 A5 E1 JSR DPB | |
| 249/ E177 : E0 10 CPX #16 | |
| 250/ E179 : D0 F9 BNE DPL0 | |
| 251/ E17B : | |
| 252/ E17B : A9 17 LDA #low(DSEP1) | |
| 253/ E17D : 85 27 STA PT0 | |
| 254/ E17F : A9 E5 LDA #high(DSEP1) | |
| 255/ E181 : 85 28 STA PT0+1 | |
| 256/ E183 : 20 D1 E3 JSR STROUT | |
| 257/ E186 : | |
| 258/ E186 : ;; Print ASCII area | |
| 259/ E186 : A2 00 LDX #0 | |
| 260/ E188 : DPL1: | |
| 261/ E188 : B5 00 LDA INBUF,X | |
| 262/ E18A : C9 20 CMP #' ' | |
| 263/ E18C : 90 0A BCC DPL2 | |
| 264/ E18E : C9 7F CMP #$7F | |
| 265/ E190 : B0 06 BCS DPL2 | |
| 266/ E192 : 20 F4 E5 JSR CONOUT | |
| 267/ E195 : 4C 9D E1 JMP DPL3 | |
| 268/ E198 : DPL2: | |
| 269/ E198 : A9 2E LDA #'.' | |
| 270/ E19A : 20 F4 E5 JSR CONOUT | |
| 271/ E19D : DPL3: | |
| 272/ E19D : E8 INX | |
| 273/ E19E : E0 10 CPX #16 | |
| 274/ E1A0 : D0 E6 BNE DPL1 | |
| 275/ E1A2 : 4C F7 E3 JMP CRLF | |
| 276/ E1A5 : | |
| 277/ E1A5 : ;; Dump byte | |
| 278/ E1A5 : DPB: | |
| 279/ E1A5 : A9 20 LDA #' ' | |
| 280/ E1A7 : 20 F4 E5 JSR CONOUT | |
| AS V1.42 Beta [Bld 158] - Source File unimon_6502.asm - Page 7 - 04/08/20 16:57:26 | |
| 281/ E1AA : A5 14 LDA DSTATE | |
| 282/ E1AC : D0 1B BNE DPB2 | |
| 283/ E1AE : ;; Dump state 0 | |
| 284/ E1AE : 98 TYA | |
| 285/ E1AF : 38 SEC | |
| 286/ E1B0 : E5 10 SBC DSADDR | |
| 287/ E1B2 : 29 0F AND #$0F | |
| 288/ E1B4 : F0 0F BEQ DPB1 | |
| 289/ E1B6 : ;; Still 0 or 2 | |
| 290/ E1B6 : DPB0: | |
| 291/ E1B6 : A9 20 LDA #' ' | |
| 292/ E1B8 : 95 00 STA INBUF,X | |
| 293/ E1BA : 20 F4 E5 JSR CONOUT | |
| 294/ E1BD : A9 20 LDA #' ' | |
| 295/ E1BF : 20 F4 E5 JSR CONOUT | |
| 296/ E1C2 : E8 INX | |
| 297/ E1C3 : C8 INY | |
| 298/ E1C4 : 60 RTS | |
| 299/ E1C5 : ;; Found start address | |
| 300/ E1C5 : DPB1: | |
| 301/ E1C5 : A9 01 LDA #1 | |
| 302/ E1C7 : 85 14 STA DSTATE | |
| 303/ E1C9 : DPB2: | |
| 304/ E1C9 : A5 14 LDA DSTATE | |
| 305/ E1CB : C9 01 CMP #1 | |
| 306/ E1CD : D0 E7 BNE DPB0 | |
| 307/ E1CF : ;; Dump state 1 | |
| 308/ E1CF : B1 29 LDA (PT1),Y | |
| 309/ E1D1 : 95 00 STA INBUF,X | |
| 310/ E1D3 : 20 DF E3 JSR HEXOUT2 | |
| 311/ E1D6 : E8 INX | |
| 312/ E1D7 : C8 INY | |
| 313/ E1D8 : 98 TYA | |
| 314/ E1D9 : 18 CLC | |
| 315/ E1DA : 65 29 ADC PT1 | |
| 316/ E1DC : 85 27 STA PT0 | |
| 317/ E1DE : A5 2A LDA PT1+1 | |
| 318/ E1E0 : 69 00 ADC #0 | |
| 319/ E1E2 : 85 28 STA PT0+1 | |
| 320/ E1E4 : A5 27 LDA PT0 | |
| 321/ E1E6 : C5 12 CMP DEADDR | |
| 322/ E1E8 : D0 0A BNE DPBE | |
| 323/ E1EA : A5 28 LDA PT0+1 | |
| 324/ E1EC : C5 13 CMP DEADDR+1 | |
| 325/ E1EE : D0 04 BNE DPBE | |
| 326/ E1F0 : ;; Found end address | |
| 327/ E1F0 : A9 02 LDA #2 | |
| 328/ E1F2 : 85 14 STA DSTATE | |
| 329/ E1F4 : DPBE: | |
| 330/ E1F4 : 60 RTS | |
| 331/ E1F5 : | |
| 332/ E1F5 : ;;; | |
| 333/ E1F5 : ;;; Go address | |
| 334/ E1F5 : ;;; | |
| 335/ E1F5 : GO: | |
| 336/ E1F5 : E8 INX | |
| 337/ E1F6 : 20 4A E4 JSR SKIPSP | |
| 338/ E1F9 : 20 60 E4 JSR RDHEX | |
| 339/ E1FC : B5 00 LDA INBUF,X | |
| 340/ E1FE : F0 03 BEQ G00 | |
| AS V1.42 Beta [Bld 158] - Source File unimon_6502.asm - Page 8 - 04/08/20 16:57:26 | |
| 341/ E200 : 4C B5 E0 JMP ERR | |
| 342/ E203 : G00: | |
| 343/ E203 : A5 2B LDA CNT | |
| 344/ E205 : F0 08 BEQ G0 | |
| 345/ E207 : =>TRUE IF USE_REGCMD | |
| 346/ E207 : A5 29 LDA PT1 | |
| 347/ E209 : 85 20 STA REGPC | |
| 348/ E20B : A5 2A LDA PT1+1 | |
| 349/ E20D : 85 21 STA REGPC+1 | |
| 350/ E20F : G0: | |
| 351/ E20F : A6 1F LDX REGSP | |
| 352/ E211 : 9A TXS ; SP | |
| 353/ E212 : A5 21 LDA REGPC+1 | |
| 354/ E214 : 48 PHA ; PC(H) | |
| 355/ E215 : A5 20 LDA REGPC | |
| 356/ E217 : 48 PHA ; PC(L) | |
| 357/ E218 : A5 22 LDA REGPSR | |
| 358/ E21A : 48 PHA ; PSR | |
| 359/ E21B : A5 1C LDA REGA | |
| 360/ E21D : A6 1D LDX REGX | |
| 361/ E21F : A4 1E LDY REGY | |
| 362/ E221 : 40 RTI | |
| 363/ E222 : =>FALSE ELSE ; !USE_REGCMD | |
| 364/ E222 : LDA PT1 | |
| 365/ E222 : STA GADDR | |
| 366/ E222 : LDA PT1+1 | |
| 367/ E222 : STA GADDR+1 | |
| 368/ E222 : G0: | |
| 369/ E222 : JMP (GADDR) | |
| 370/ E222 : [345] ENDIF ; USE_REGCMD | |
| 371/ E222 : | |
| 372/ E222 : ;;; | |
| 373/ E222 : ;;; Set memory | |
| 374/ E222 : ;;; | |
| 375/ E222 : SETM: | |
| 376/ E222 : E8 INX | |
| 377/ E223 : 20 4A E4 JSR SKIPSP | |
| 378/ E226 : 20 60 E4 JSR RDHEX | |
| 379/ E229 : 20 4A E4 JSR SKIPSP | |
| 380/ E22C : B5 00 LDA INBUF,X | |
| 381/ E22E : F0 03 BEQ SM0 | |
| 382/ E230 : 4C B5 E0 JMP ERR | |
| 383/ E233 : SM0: | |
| 384/ E233 : A5 2B LDA CNT | |
| 385/ E235 : F0 08 BEQ SM1 | |
| 386/ E237 : A5 29 LDA PT1 | |
| 387/ E239 : 85 17 STA SADDR | |
| 388/ E23B : A5 2A LDA PT1+1 | |
| 389/ E23D : 85 18 STA SADDR+1 | |
| 390/ E23F : SM1: | |
| 391/ E23F : A5 18 LDA SADDR+1 | |
| 392/ E241 : 20 DF E3 JSR HEXOUT2 | |
| 393/ E244 : A5 17 LDA SADDR | |
| 394/ E246 : 20 DF E3 JSR HEXOUT2 | |
| 395/ E249 : A9 17 LDA #low(DSEP1) | |
| 396/ E24B : 85 27 STA PT0 | |
| 397/ E24D : A9 E5 LDA #high(DSEP1) | |
| 398/ E24F : 85 28 STA PT0+1 | |
| 399/ E251 : 20 D1 E3 JSR STROUT | |
| 400/ E254 : A0 00 LDY #0 | |
| AS V1.42 Beta [Bld 158] - Source File unimon_6502.asm - Page 9 - 04/08/20 16:57:26 | |
| 401/ E256 : B1 17 LDA (SADDR),Y | |
| 402/ E258 : 20 DF E3 JSR HEXOUT2 | |
| 403/ E25B : A9 20 LDA #' ' | |
| 404/ E25D : 20 F4 E5 JSR CONOUT | |
| 405/ E260 : 20 01 E4 JSR GETLIN | |
| 406/ E263 : A2 00 LDX #0 | |
| 407/ E265 : 20 4A E4 JSR SKIPSP | |
| 408/ E268 : B5 00 LDA INBUF,X | |
| 409/ E26A : D0 10 BNE SM2 | |
| 410/ E26C : SM10: | |
| 411/ E26C : ;; Empty (Increment address) | |
| 412/ E26C : A5 17 LDA SADDR | |
| 413/ E26E : 18 CLC | |
| 414/ E26F : 69 01 ADC #1 | |
| 415/ E271 : 85 17 STA SADDR | |
| 416/ E273 : A5 18 LDA SADDR+1 | |
| 417/ E275 : 69 00 ADC #0 | |
| 418/ E277 : 85 18 STA SADDR+1 | |
| 419/ E279 : 4C 3F E2 JMP SM1 | |
| 420/ E27C : SM2: | |
| 421/ E27C : C9 2D CMP #'-' | |
| 422/ E27E : D0 10 BNE SM3 | |
| 423/ E280 : ;; '-' (Decrement address) | |
| 424/ E280 : A5 17 LDA SADDR | |
| 425/ E282 : 38 SEC | |
| 426/ E283 : E9 01 SBC #1 | |
| 427/ E285 : 85 17 STA SADDR | |
| 428/ E287 : A5 18 LDA SADDR+1 | |
| 429/ E289 : E9 00 SBC #0 | |
| 430/ E28B : 85 18 STA SADDR+1 | |
| 431/ E28D : 4C 3F E2 JMP SM1 | |
| 432/ E290 : SM3: | |
| 433/ E290 : C9 2E CMP #'.' | |
| 434/ E292 : D0 03 BNE SM4 | |
| 435/ E294 : ;; '.' (Quit) | |
| 436/ E294 : 4C 7F E0 JMP WSTART | |
| 437/ E297 : SM4: | |
| 438/ E297 : 20 60 E4 JSR RDHEX | |
| 439/ E29A : A5 2B LDA CNT | |
| 440/ E29C : D0 03 BNE SM40 | |
| 441/ E29E : 4C B5 E0 JMP ERR | |
| 442/ E2A1 : SM40: | |
| 443/ E2A1 : A5 29 LDA PT1 | |
| 444/ E2A3 : A0 00 LDY #0 | |
| 445/ E2A5 : 91 17 STA (SADDR),Y | |
| 446/ E2A7 : 4C 6C E2 JMP SM10 | |
| 447/ E2AA : | |
| 448/ E2AA : ;;; | |
| 449/ E2AA : ;;; Register | |
| 450/ E2AA : ;;; | |
| 451/ E2AA : =>TRUE IF USE_REGCMD | |
| 452/ E2AA : REG: | |
| 453/ E2AA : E8 INX | |
| 454/ E2AB : 20 4A E4 JSR SKIPSP | |
| 455/ E2AE : 20 55 E4 JSR UPPER | |
| 456/ E2B1 : C9 00 CMP #0 | |
| 457/ E2B3 : D0 06 BNE RG0 | |
| 458/ E2B5 : 20 69 E3 JSR RDUMP | |
| 459/ E2B8 : 4C 7F E0 JMP WSTART | |
| 460/ E2BB : RG0: | |
| AS V1.42 Beta [Bld 158] - Source File unimon_6502.asm - Page 10 - 04/08/20 16:57:26 | |
| 461/ E2BB : A0 7A LDY #low(RNTAB) | |
| 462/ E2BD : 84 29 STY PT1 | |
| 463/ E2BF : A0 E5 LDY #high(RNTAB) | |
| 464/ E2C1 : 84 2A STY PT1+1 | |
| 465/ E2C3 : A0 00 LDY #0 | |
| 466/ E2C5 : RG1: | |
| 467/ E2C5 : D1 29 CMP (PT1),Y | |
| 468/ E2C7 : F0 13 BEQ RG2 | |
| 469/ E2C9 : C8 INY | |
| 470/ E2CA : 48 PHA | |
| 471/ E2CB : B1 29 LDA (PT1),Y | |
| 472/ E2CD : F0 09 BEQ RGE | |
| 473/ E2CF : 68 PLA | |
| 474/ E2D0 : C8 INY | |
| 475/ E2D1 : C8 INY | |
| 476/ E2D2 : C8 INY | |
| 477/ E2D3 : C8 INY | |
| 478/ E2D4 : C8 INY | |
| 479/ E2D5 : 4C C5 E2 JMP RG1 | |
| 480/ E2D8 : RGE: | |
| 481/ E2D8 : 68 PLA | |
| 482/ E2D9 : 4C B5 E0 JMP ERR | |
| 483/ E2DC : RG2: | |
| 484/ E2DC : C8 INY | |
| 485/ E2DD : B1 29 LDA (PT1),Y | |
| 486/ E2DF : C9 80 CMP #$80 | |
| 487/ E2E1 : D0 19 BNE RG3 | |
| 488/ E2E3 : ;; Next table | |
| 489/ E2E3 : C8 INY | |
| 490/ E2E4 : B1 29 LDA (PT1),Y | |
| 491/ E2E6 : 85 2B STA CNT ; Temporary | |
| 492/ E2E8 : C8 INY | |
| 493/ E2E9 : B1 29 LDA (PT1),Y | |
| 494/ E2EB : 85 2A STA PT1+1 | |
| 495/ E2ED : A5 2B LDA CNT | |
| 496/ E2EF : 85 29 STA PT1 | |
| 497/ E2F1 : A0 00 LDY #0 | |
| 498/ E2F3 : E8 INX | |
| 499/ E2F4 : B5 00 LDA INBUF,X | |
| 500/ E2F6 : 20 55 E4 JSR UPPER | |
| 501/ E2F9 : 4C C5 E2 JMP RG1 | |
| 502/ E2FC : RG3: | |
| 503/ E2FC : C9 00 CMP #0 | |
| 504/ E2FE : F0 66 BEQ RGE0 | |
| 505/ E300 : | |
| 506/ E300 : C8 INY ; +2 | |
| 507/ E301 : B1 29 LDA (PT1),Y | |
| 508/ E303 : AA TAX | |
| 509/ E304 : C8 INY | |
| 510/ E305 : | |
| 511/ E305 : C8 INY ; +4 | |
| 512/ E306 : B1 29 LDA (PT1),Y | |
| 513/ E308 : 85 27 STA PT0 | |
| 514/ E30A : C8 INY | |
| 515/ E30B : B1 29 LDA (PT1),Y | |
| 516/ E30D : 85 28 STA PT0+1 | |
| 517/ E30F : 84 2B STY CNT ; Save Y (STROUT destroys Y) | |
| 518/ E311 : 20 D1 E3 JSR STROUT | |
| 519/ E314 : A9 3D LDA #'=' | |
| 520/ E316 : 20 F4 E5 JSR CONOUT | |
| AS V1.42 Beta [Bld 158] - Source File unimon_6502.asm - Page 11 - 04/08/20 16:57:26 | |
| 521/ E319 : A4 2B LDY CNT ; Restore Y | |
| 522/ E31B : 88 DEY | |
| 523/ E31C : 88 DEY | |
| 524/ E31D : 88 DEY | |
| 525/ E31E : 88 DEY | |
| 526/ E31F : B1 29 LDA (PT1),Y | |
| 527/ E321 : 85 23 STA REGSIZ | |
| 528/ E323 : C9 01 CMP #1 | |
| 529/ E325 : D0 08 BNE RG4 | |
| 530/ E327 : ;; 8 bit register | |
| 531/ E327 : B5 00 LDA 0,X | |
| 532/ E329 : 20 DF E3 JSR HEXOUT2 | |
| 533/ E32C : 4C 39 E3 JMP RG5 | |
| 534/ E32F : RG4: | |
| 535/ E32F : ;; 16 bit register | |
| 536/ E32F : B5 01 LDA 1,X | |
| 537/ E331 : 20 DF E3 JSR HEXOUT2 | |
| 538/ E334 : B5 00 LDA 0,X | |
| 539/ E336 : 20 DF E3 JSR HEXOUT2 | |
| 540/ E339 : RG5: | |
| 541/ E339 : A9 20 LDA #' ' | |
| 542/ E33B : 20 F4 E5 JSR CONOUT | |
| 543/ E33E : 86 26 STX CKSUM ; Save X (GETLIN destroys X) | |
| 544/ E340 : 20 01 E4 JSR GETLIN | |
| 545/ E343 : A2 00 LDX #0 | |
| 546/ E345 : 20 60 E4 JSR RDHEX | |
| 547/ E348 : A5 2B LDA CNT | |
| 548/ E34A : F0 17 BEQ RGR | |
| 549/ E34C : A6 26 LDX CKSUM ; Restore X | |
| 550/ E34E : A5 23 LDA REGSIZ | |
| 551/ E350 : C9 01 CMP #1 | |
| 552/ E352 : D0 07 BNE RG6 | |
| 553/ E354 : ;; 8 bit register | |
| 554/ E354 : A5 29 LDA PT1 | |
| 555/ E356 : 95 00 STA ,X | |
| 556/ E358 : 4C 63 E3 JMP RG7 | |
| 557/ E35B : RG6: | |
| 558/ E35B : ;; 16 bit address | |
| 559/ E35B : A5 29 LDA PT1 | |
| 560/ E35D : 95 00 STA ,X ; (L) | |
| 561/ E35F : A5 2A LDA PT1+1 | |
| 562/ E361 : 95 01 STA 1,X ; (H) | |
| 563/ E363 : RG7: | |
| 564/ E363 : RGR: | |
| 565/ E363 : 4C 7F E0 JMP WSTART | |
| 566/ E366 : | |
| 567/ E366 : RGE0: | |
| 568/ E366 : 4C B5 E0 JMP ERR | |
| 569/ E369 : | |
| 570/ E369 : RDUMP: | |
| 571/ E369 : A9 5D LDA #low(RDSA) ; A | |
| 572/ E36B : 85 27 STA PT0 | |
| 573/ E36D : A9 E5 LDA #high(RDSA) | |
| 574/ E36F : 85 28 STA PT0+1 | |
| 575/ E371 : 20 D1 E3 JSR STROUT | |
| 576/ E374 : A5 1C LDA REGA | |
| 577/ E376 : 20 DF E3 JSR HEXOUT2 | |
| 578/ E379 : | |
| 579/ E379 : A9 60 LDA #low(RDSX) ; X | |
| 580/ E37B : 85 27 STA PT0 | |
| AS V1.42 Beta [Bld 158] - Source File unimon_6502.asm - Page 12 - 04/08/20 16:57:26 | |
| 581/ E37D : A9 E5 LDA #high(RDSX) | |
| 582/ E37F : 85 28 STA PT0+1 | |
| 583/ E381 : 20 D1 E3 JSR STROUT | |
| 584/ E384 : A5 1D LDA REGX | |
| 585/ E386 : 20 DF E3 JSR HEXOUT2 | |
| 586/ E389 : | |
| 587/ E389 : A9 64 LDA #low(RDSY) ; Y | |
| 588/ E38B : 85 27 STA PT0 | |
| 589/ E38D : A9 E5 LDA #high(RDSY) | |
| 590/ E38F : 85 28 STA PT0+1 | |
| 591/ E391 : 20 D1 E3 JSR STROUT | |
| 592/ E394 : A5 1E LDA REGY | |
| 593/ E396 : 20 DF E3 JSR HEXOUT2 | |
| 594/ E399 : | |
| 595/ E399 : A9 68 LDA #low(RDSSP) ; SP | |
| 596/ E39B : 85 27 STA PT0 | |
| 597/ E39D : A9 E5 LDA #high(RDSSP) | |
| 598/ E39F : 85 28 STA PT0+1 | |
| 599/ E3A1 : 20 D1 E3 JSR STROUT | |
| 600/ E3A4 : A5 1F LDA REGSP | |
| 601/ E3A6 : 20 DF E3 JSR HEXOUT2 | |
| 602/ E3A9 : | |
| 603/ E3A9 : A9 6F LDA #low(RDSPC) ; PC | |
| 604/ E3AB : 85 27 STA PT0 | |
| 605/ E3AD : A9 E5 LDA #high(RDSPC) | |
| 606/ E3AF : 85 28 STA PT0+1 | |
| 607/ E3B1 : 20 D1 E3 JSR STROUT | |
| 608/ E3B4 : A5 21 LDA REGPC+1 ; PC(H) | |
| 609/ E3B6 : 20 DF E3 JSR HEXOUT2 | |
| 610/ E3B9 : A5 20 LDA REGPC ; PC(L) | |
| 611/ E3BB : 20 DF E3 JSR HEXOUT2 | |
| 612/ E3BE : | |
| 613/ E3BE : A9 74 LDA #low(RDSPSR) ; PSR | |
| 614/ E3C0 : 85 27 STA PT0 | |
| 615/ E3C2 : A9 E5 LDA #high(RDSPSR) | |
| 616/ E3C4 : 85 28 STA PT0+1 | |
| 617/ E3C6 : 20 D1 E3 JSR STROUT | |
| 618/ E3C9 : A5 22 LDA REGPSR | |
| 619/ E3CB : 20 DF E3 JSR HEXOUT2 | |
| 620/ E3CE : | |
| 621/ E3CE : 4C F7 E3 JMP CRLF | |
| 622/ E3D1 : [451] ENDIF | |
| 623/ E3D1 : | |
| 624/ E3D1 : ;;; | |
| 625/ E3D1 : ;;; Other support routines | |
| 626/ E3D1 : ;;; | |
| 627/ E3D1 : | |
| 628/ E3D1 : STROUT: | |
| 629/ E3D1 : A0 00 LDY #0 | |
| 630/ E3D3 : STRO0: | |
| 631/ E3D3 : B1 27 LDA (PT0),Y | |
| 632/ E3D5 : F0 07 BEQ STROE | |
| 633/ E3D7 : 20 F4 E5 JSR CONOUT | |
| 634/ E3DA : C8 INY | |
| 635/ E3DB : 4C D3 E3 JMP STRO0 | |
| 636/ E3DE : STROE: | |
| 637/ E3DE : 60 RTS | |
| 638/ E3DF : | |
| 639/ E3DF : HEXOUT2: | |
| 640/ E3DF : 48 PHA | |
| AS V1.42 Beta [Bld 158] - Source File unimon_6502.asm - Page 13 - 04/08/20 16:57:26 | |
| 641/ E3E0 : 4A LSR A | |
| 642/ E3E1 : 4A LSR A | |
| 643/ E3E2 : 4A LSR A | |
| 644/ E3E3 : 4A LSR A | |
| 645/ E3E4 : 20 E8 E3 JSR HEXOUT1 | |
| 646/ E3E7 : 68 PLA | |
| 647/ E3E8 : HEXOUT1: | |
| 648/ E3E8 : 29 0F AND #$0F | |
| 649/ E3EA : 18 CLC | |
| 650/ E3EB : 69 30 ADC #'0' | |
| 651/ E3ED : C9 3A CMP #'9'+1 | |
| 652/ E3EF : 90 03 BCC HEXOUTE | |
| 653/ E3F1 : 18 CLC | |
| 654/ E3F2 : 69 07 ADC #'A'-'9'-1 | |
| 655/ E3F4 : HEXOUTE: | |
| 656/ E3F4 : 4C F4 E5 JMP CONOUT | |
| 657/ E3F7 : | |
| 658/ E3F7 : CRLF: | |
| 659/ E3F7 : A9 0D LDA #CR | |
| 660/ E3F9 : 20 F4 E5 JSR CONOUT | |
| 661/ E3FC : A9 0A LDA #LF | |
| 662/ E3FE : 4C F4 E5 JMP CONOUT | |
| 663/ E401 : | |
| 664/ E401 : GETLIN: | |
| 665/ E401 : A2 00 LDX #0 | |
| 666/ E403 : GL0: | |
| 667/ E403 : 20 E3 E5 JSR CONIN | |
| 668/ E406 : C9 0D CMP #CR | |
| 669/ E408 : F0 38 BEQ GLE | |
| 670/ E40A : C9 0A CMP #LF | |
| 671/ E40C : F0 34 BEQ GLE | |
| 672/ E40E : C9 08 CMP #BS | |
| 673/ E410 : F0 19 BEQ GLB | |
| 674/ E412 : C9 7F CMP #DEL | |
| 675/ E414 : F0 15 BEQ GLB | |
| 676/ E416 : C9 20 CMP #' ' | |
| 677/ E418 : 90 E9 BCC GL0 | |
| 678/ E41A : C9 80 CMP #$80 | |
| 679/ E41C : B0 E5 BCS GL0 | |
| 680/ E41E : E0 0F CPX #BUFLEN-1 | |
| 681/ E420 : B0 E1 BCS GL0 ; Too long | |
| 682/ E422 : 95 00 STA INBUF,X | |
| 683/ E424 : E8 INX | |
| 684/ E425 : 20 F4 E5 JSR CONOUT | |
| 685/ E428 : 4C 03 E4 JMP GL0 | |
| 686/ E42B : GLB: | |
| 687/ E42B : E0 00 CPX #0 | |
| 688/ E42D : F0 D4 BEQ GL0 | |
| 689/ E42F : CA DEX | |
| 690/ E430 : A9 08 LDA #BS | |
| 691/ E432 : 20 F4 E5 JSR CONOUT | |
| 692/ E435 : A9 20 LDA #' ' | |
| 693/ E437 : 20 F4 E5 JSR CONOUT | |
| 694/ E43A : A9 08 LDA #BS | |
| 695/ E43C : 20 F4 E5 JSR CONOUT | |
| 696/ E43F : 4C 03 E4 JMP GL0 | |
| 697/ E442 : GLE: | |
| 698/ E442 : 20 F7 E3 JSR CRLF | |
| 699/ E445 : A9 00 LDA #0 | |
| 700/ E447 : 95 00 STA INBUF,X | |
| AS V1.42 Beta [Bld 158] - Source File unimon_6502.asm - Page 14 - 04/08/20 16:57:26 | |
| 701/ E449 : 60 RTS | |
| 702/ E44A : | |
| 703/ E44A : SKIPSP: | |
| 704/ E44A : B5 00 LDA INBUF,X | |
| 705/ E44C : C9 20 CMP #' ' | |
| 706/ E44E : D0 04 BNE SSE | |
| 707/ E450 : E8 INX | |
| 708/ E451 : 4C 4A E4 JMP SKIPSP | |
| 709/ E454 : SSE: | |
| 710/ E454 : 60 RTS | |
| 711/ E455 : | |
| 712/ E455 : UPPER: | |
| 713/ E455 : C9 61 CMP #'a' | |
| 714/ E457 : 90 06 BCC UPE | |
| 715/ E459 : C9 7B CMP #'z'+1 | |
| 716/ E45B : B0 02 BCS UPE | |
| 717/ E45D : 69 E0 ADC #'A'-'a' | |
| 718/ E45F : UPE: | |
| 719/ E45F : 60 RTS | |
| 720/ E460 : | |
| 721/ E460 : RDHEX: | |
| 722/ E460 : A9 00 LDA #0 | |
| 723/ E462 : 85 29 STA PT1 | |
| 724/ E464 : 85 2A STA PT1+1 | |
| 725/ E466 : 85 2B STA CNT | |
| 726/ E468 : RH0: | |
| 727/ E468 : B5 00 LDA INBUF,X | |
| 728/ E46A : 20 55 E4 JSR UPPER | |
| 729/ E46D : C9 30 CMP #'0' | |
| 730/ E46F : 90 2D BCC RHE | |
| 731/ E471 : C9 3A CMP #'9'+1 | |
| 732/ E473 : 90 0B BCC RH1 | |
| 733/ E475 : C9 41 CMP #'A' | |
| 734/ E477 : 90 25 BCC RHE | |
| 735/ E479 : C9 47 CMP #'F'+1 | |
| 736/ E47B : B0 21 BCS RHE | |
| 737/ E47D : 38 SEC | |
| 738/ E47E : E9 07 SBC #'A'-'9'-1 | |
| 739/ E480 : RH1: | |
| 740/ E480 : 38 SEC | |
| 741/ E481 : E9 30 SBC #'0' | |
| 742/ E483 : 06 29 ASL PT1 | |
| 743/ E485 : 26 2A ROL PT1+1 | |
| 744/ E487 : 06 29 ASL PT1 | |
| 745/ E489 : 26 2A ROL PT1+1 | |
| 746/ E48B : 06 29 ASL PT1 | |
| 747/ E48D : 26 2A ROL PT1+1 | |
| 748/ E48F : 06 29 ASL PT1 | |
| 749/ E491 : 26 2A ROL PT1+1 | |
| 750/ E493 : 18 CLC | |
| 751/ E494 : 65 29 ADC PT1 | |
| 752/ E496 : 85 29 STA PT1 | |
| 753/ E498 : E6 2B INC CNT | |
| 754/ E49A : E8 INX | |
| 755/ E49B : 4C 68 E4 JMP RH0 | |
| 756/ E49E : RHE: | |
| 757/ E49E : 60 RTS | |
| 758/ E49F : | |
| 759/ E49F : ;;; | |
| 760/ E49F : ;;; Interrupt handler | |
| AS V1.42 Beta [Bld 158] - Source File unimon_6502.asm - Page 15 - 04/08/20 16:57:26 | |
| 761/ E49F : ;;; | |
| 762/ E49F : ;; Interrupt / Break | |
| 763/ E49F : IRQBRK: | |
| 764/ E49F : =>TRUE IF USE_REGCMD | |
| 765/ E49F : 48 PHA | |
| 766/ E4A0 : 08 PHP | |
| 767/ E4A1 : 68 PLA ; A <= PSR | |
| 768/ E4A2 : 29 10 AND #$10 ; Check B flag | |
| 769/ E4A4 : F0 2C BEQ IBIR | |
| 770/ E4A6 : D8 CLD | |
| 771/ E4A7 : | |
| 772/ E4A7 : 68 PLA ; A | |
| 773/ E4A8 : 85 1C STA REGA | |
| 774/ E4AA : 8A TXA ; X | |
| 775/ E4AB : 85 1D STA REGX | |
| 776/ E4AD : 98 TYA ; Y | |
| 777/ E4AE : 85 1E STA REGY | |
| 778/ E4B0 : 68 PLA ; PSR (Pushed by BRK) | |
| 779/ E4B1 : 85 22 STA REGPSR | |
| 780/ E4B3 : 68 PLA ; PC(L) (Pushed by BRK) | |
| 781/ E4B4 : 38 SEC | |
| 782/ E4B5 : E9 02 SBC #2 ; Adjust PC to point BRK instruction | |
| 783/ E4B7 : 85 20 STA REGPC | |
| 784/ E4B9 : 68 PLA ; PC(H) (Pushed by BRK) | |
| 785/ E4BA : E9 00 SBC #0 | |
| 786/ E4BC : 85 21 STA REGPC+1 | |
| 787/ E4BE : BA TSX ; SP | |
| 788/ E4BF : 86 1F STX REGSP | |
| 789/ E4C1 : | |
| 790/ E4C1 : A9 57 LDA #low(BRKMSG) | |
| 791/ E4C3 : 85 27 STA PT0 | |
| 792/ E4C5 : A9 E5 LDA #high(BRKMSG) | |
| 793/ E4C7 : 85 28 STA PT0+1 | |
| 794/ E4C9 : 20 D1 E3 JSR STROUT | |
| 795/ E4CC : 20 69 E3 JSR RDUMP | |
| 796/ E4CF : 4C 7F E0 JMP WSTART | |
| 797/ E4D2 : | |
| 798/ E4D2 : IBIR: | |
| 799/ E4D2 : 68 PLA | |
| 800/ E4D3 : 40 RTI | |
| 801/ E4D4 : =>FALSE ELSE ; USE_REGCMD | |
| 802/ E4D4 : ;; Dummy | |
| 803/ E4D4 : RTI | |
| 804/ E4D4 : [764] ENDIF ; USE_REGCMD | |
| 805/ E4D4 : | |
| 806/ E4D4 : OPNMSG: | |
| 807/ E4D4 : 0D 0A 55 6E 69 76 FCB CR,LF,"Universal Monitor 6502",CR,LF,$00 | |
| 65 72 73 61 6C 20 | |
| 4D 6F 6E 69 74 6F | |
| 72 20 36 35 30 32 | |
| 0D 0A 00 | |
| 808/ E4EF : PROMPT: | |
| 809/ E4EF : 5D 20 00 FCB "] ",$00 | |
| 810/ E4F2 : IHEMSG: | |
| 811/ E4F2 : 45 72 72 6F 72 20 FCB "Error ihex",CR,LF,$00 | |
| 69 68 65 78 0D 0A | |
| 00 | |
| 812/ E4FF : | |
| 813/ E4FF : SHEMSG: | |
| 814/ E4FF : 45 72 72 6F 72 20 FCB "Error srec",CR,LF,$00 | |
| AS V1.42 Beta [Bld 158] - Source File unimon_6502.asm - Page 16 - 04/08/20 16:57:26 | |
| 73 72 65 63 0D 0A | |
| 00 | |
| 815/ E50C : | |
| 816/ E50C : ERRMSG: | |
| 817/ E50C : 45 72 72 6F 72 0D FCB "Error",CR,LF,$00 | |
| 0A 00 | |
| 818/ E514 : | |
| 819/ E514 : DSEP0: | |
| 820/ E514 : 20 3A 00 FCB " :",$00 | |
| 821/ E517 : DSEP1: | |
| 822/ E517 : 20 3A 20 00 FCB " : ",$00 | |
| 823/ E51B : IHEXER: | |
| 824/ E51B : 3A 30 30 30 30 30 FCB ":00000001FF",CR,LF,$00 | |
| 30 30 31 46 46 0D | |
| 0A 00 | |
| 825/ E529 : SRECER: | |
| 826/ E529 : 53 39 30 33 30 30 FCB "S9030000FC",CR,LF,$00 | |
| 30 30 46 43 0D 0A | |
| 00 | |
| 827/ E536 : | |
| 828/ E536 : =>TRUE IF USE_IDENT | |
| 829/ E536 : 36 35 30 32 0D 0A IM65: FCB "6502",CR,LF,$00 | |
| 00 | |
| 830/ E53D : 36 35 43 30 32 0D IM65C: FCB "65C02",CR,LF,$00 | |
| 0A 00 | |
| 831/ E545 : 52 36 35 43 30 32 IMR65C: FCB "R65C02",CR,LF,$00 | |
| 0D 0A 00 | |
| 832/ E54E : 52 50 32 41 30 33 IM2A03: FCB "RP2A03",CR,LF,$00 | |
| 0D 0A 00 | |
| 833/ E557 : [828] ENDIF ; USE_IDENT | |
| 834/ E557 : | |
| 835/ E557 : =>TRUE IF USE_REGCMD | |
| 836/ E557 : | |
| 837/ E557 : 42 52 4B 0D 0A 00 BRKMSG: FCB "BRK",CR,LF,$00 | |
| 838/ E55D : | |
| 839/ E55D : 41 3D 00 RDSA: FCB "A=",$00 | |
| 840/ E560 : 20 58 3D 00 RDSX: FCB " X=",$00 | |
| 841/ E564 : 20 59 3D 00 RDSY: FCB " Y=",$00 | |
| 842/ E568 : 20 53 50 3D 30 31 RDSSP: FCB " SP=01",$00 | |
| 00 | |
| 843/ E56F : 20 50 43 3D 00 RDSPC: FCB " PC=",$00 | |
| 844/ E574 : 20 50 53 52 3D 00 RDSPSR: FCB " PSR=",$00 | |
| 845/ E57A : | |
| 846/ E57A : RNTAB: | |
| 847/ E57A : 41 01 FCB 'A',1 | |
| 848/ E57C : 1C 00 C8 E5 FDB REGA,RNA | |
| 849/ E580 : 58 01 FCB 'X',1 | |
| 850/ E582 : 1D 00 CA E5 FDB REGX,RNX | |
| 851/ E586 : 59 01 FCB 'Y',1 | |
| 852/ E588 : 1E 00 CC E5 FDB REGY,RNY | |
| 853/ E58C : 53 80 FCB 'S',$80 | |
| 854/ E58E : 9E E5 00 00 FDB RNTABS,0 | |
| 855/ E592 : 50 80 FCB 'P',$80 | |
| 856/ E594 : AA E5 00 00 FDB RNTABP,0 | |
| 857/ E598 : | |
| 858/ E598 : 00 00 FCB $00,0 ; End mark | |
| 859/ E59A : 00 00 00 00 FDB 0,0 | |
| 860/ E59E : | |
| 861/ E59E : RNTABS: | |
| 862/ E59E : 50 01 FCB 'P',1 | |
| AS V1.42 Beta [Bld 158] - Source File unimon_6502.asm - Page 17 - 04/08/20 16:57:26 | |
| 863/ E5A0 : 1F 00 CE E5 FDB REGSP,RNSP | |
| 864/ E5A4 : | |
| 865/ E5A4 : 00 00 FCB $00,0 ; End mark | |
| 866/ E5A6 : 00 00 00 00 FDB 0,0 | |
| 867/ E5AA : | |
| 868/ E5AA : RNTABP: | |
| 869/ E5AA : 43 02 FCB 'C',2 | |
| 870/ E5AC : 20 00 D1 E5 FDB REGPC,RNPC | |
| 871/ E5B0 : 53 80 FCB 'S',$80 | |
| 872/ E5B2 : BC E5 00 00 FDB RNTABPS,0 | |
| 873/ E5B6 : | |
| 874/ E5B6 : 00 00 FCB $00,0 ; End mark | |
| 875/ E5B8 : 00 00 00 00 FDB 0,0 | |
| 876/ E5BC : | |
| 877/ E5BC : RNTABPS: | |
| 878/ E5BC : 52 01 FCB 'R',1 | |
| 879/ E5BE : 22 00 D4 E5 FDB REGPSR,RNPSR | |
| 880/ E5C2 : | |
| 881/ E5C2 : 00 00 FCB $00,0 ; End mark | |
| 882/ E5C4 : 00 00 00 00 FDB 0,0 | |
| 883/ E5C8 : | |
| 884/ E5C8 : 41 00 RNA: FCB "A",$00 | |
| 885/ E5CA : 58 00 RNX: FCB "X",$00 | |
| 886/ E5CC : 59 00 RNY: FCB "Y",$00 | |
| 887/ E5CE : 53 50 00 RNSP: FCB "SP",$00 | |
| 888/ E5D1 : 50 43 00 RNPC: FCB "PC",$00 | |
| 889/ E5D4 : 50 53 52 00 RNPSR: FCB "PSR",$00 | |
| 890/ E5D8 : | |
| 891/ E5D8 : [835] ENDIF | |
| 892/ E5D8 : | |
| 893/ E5D8 : =>TRUE IF USE_DEV_6850 | |
| 894/ E5D8 : INCLUDE "dev/dev_6850.asm" | |
| (1) 1/ E5D8 : ;;; | |
| (1) 2/ E5D8 : ;;; M6850 Console Driver | |
| (1) 3/ E5D8 : ;;; | |
| (1) 4/ E5D8 : | |
| (1) 5/ E5D8 : INIT: | |
| (1) 6/ E5D8 : A9 03 LDA #ACCR_I | |
| (1) 7/ E5DA : 8D 18 80 STA ACIACR | |
| (1) 8/ E5DD : A9 15 LDA #ACCR_V | |
| (1) 9/ E5DF : 8D 18 80 STA ACIACR | |
| (1) 10/ E5E2 : 60 RTS | |
| (1) 11/ E5E3 : | |
| (1) 12/ E5E3 : CONIN: | |
| (1) 13/ E5E3 : AD 18 80 LDA ACIACR | |
| (1) 14/ E5E6 : 29 01 AND #$01 | |
| (1) 15/ E5E8 : F0 F9 BEQ CONIN | |
| (1) 16/ E5EA : AD 19 80 LDA ACIADR | |
| (1) 17/ E5ED : 60 RTS | |
| (1) 18/ E5EE : | |
| (1) 19/ E5EE : CONST: | |
| (1) 20/ E5EE : AD 18 80 LDA ACIACR | |
| (1) 21/ E5F1 : 29 01 AND #$01 | |
| (1) 22/ E5F3 : 60 RTS | |
| (1) 23/ E5F4 : | |
| (1) 24/ E5F4 : CONOUT: | |
| (1) 25/ E5F4 : 48 PHA | |
| (1) 26/ E5F5 : CO0: | |
| (1) 27/ E5F5 : AD 18 80 LDA ACIACR | |
| (1) 28/ E5F8 : 4A LSR | |
| AS V1.42 Beta [Bld 158] - Source File unimon_6502.asm(dev_6850.asm) - Page 18 - 04/08/20 16:57:26 | |
| (1) 29/ E5F9 : 4A LSR | |
| (1) 30/ E5FA : 90 F9 BCC CO0 | |
| (1) 31/ E5FC : 68 PLA | |
| (1) 32/ E5FD : 8D 19 80 STA ACIADR | |
| (1) 33/ E600 : 60 RTS | |
| (1) 34/ E601 : | |
| 895/ E601 : [893] ENDIF | |
| 896/ E601 : | |
| 897/ E601 : =>FALSE IF USE_DEV_6551 | |
| 898/ E601 : INCLUDE "dev/dev_6551.asm" | |
| 899/ E601 : [897] ENDIF | |
| 900/ E601 : | |
| 901/ E601 : =>FALSE IF USE_DEV_EMILY | |
| 902/ E601 : INCLUDE "dev/dev_emily.asm" | |
| 903/ E601 : [901] ENDIF | |
| 904/ E601 : | |
| 905/ E601 : ;; | |
| 906/ E601 : ;; Entry point | |
| 907/ E601 : ;; | |
| 908/ E601 : | |
| 909/ FF80 : ORG ENTRY+0 ; Cold start | |
| 910/ FF80 : E_CSTART: | |
| 911/ FF80 : 4C 00 E0 JMP CSTART | |
| 912/ FF83 : | |
| 913/ FF88 : ORG ENTRY+8 ; Warm start | |
| 914/ FF88 : E_WSTART: | |
| 915/ FF88 : 4C 7F E0 JMP WSTART | |
| 916/ FF8B : | |
| 917/ FF90 : ORG ENTRY+16 ; Console output | |
| 918/ FF90 : E_CONOUT: | |
| 919/ FF90 : 4C F4 E5 JMP CONOUT | |
| 920/ FF93 : | |
| 921/ FF98 : ORG ENTRY+24 ; (Console) String output | |
| 922/ FF98 : E_STROUT: | |
| 923/ FF98 : 4C D1 E3 JMP STROUT | |
| 924/ FF9B : | |
| 925/ FFA0 : ORG ENTRY+32 ; Console input | |
| 926/ FFA0 : E_CONIN: | |
| 927/ FFA0 : 4C E3 E5 JMP CONIN | |
| 928/ FFA3 : | |
| 929/ FFA8 : ORG ENTRY+40 ; Console status | |
| 930/ FFA8 : E_CONST: | |
| 931/ FFA8 : 4C EE E5 JMP CONST | |
| 932/ FFAB : | |
| 933/ FFAB : ;; | |
| 934/ FFAB : ;; Vector area | |
| 935/ FFAB : ;; | |
| 936/ FFAB : | |
| 937/ FFFA : ORG $FFFA | |
| 938/ FFFA : | |
| 939/ FFFA : 00 00 FDB $0000 ; NMI | |
| 940/ FFFC : | |
| 941/ FFFC : 00 E0 FDB CSTART ; RESET | |
| 942/ FFFE : | |
| 943/ FFFE : 9F E4 FDB IRQBRK ; IRQ/BRK | |
| 944/ 10000 : | |
| 945/ 10000 : ;;; | |
| 946/ 10000 : ;;; RAM area | |
| 947/ 10000 : ;;; | |
| 948/ 10000 : | |
| AS V1.42 Beta [Bld 158] - Source File unimon_6502.asm - Page 19 - 04/08/20 16:57:26 | |
| 949/ 10000 : ;; | |
| 950/ 10000 : ;; Work Area | |
| 951/ 10000 : ;; | |
| 952/ 10000 : | |
| 953/ 0 : ORG WORK_B | |
| 954/ 0 : | |
| 955/ 0 : INBUF: RMB BUFLEN ; Line input buffer | |
| 956/ 10 : DSADDR: RMB 2 ; Dump start address | |
| 957/ 12 : DEADDR: RMB 2 ; Dump end address | |
| 958/ 14 : DSTATE: RMB 1 ; Dump state | |
| 959/ 15 : GADDR: RMB 2 ; Go address | |
| 960/ 17 : SADDR: RMB 2 ; Set address | |
| 961/ 19 : HEXMOD: RMB 1 ; HEX file mode | |
| 962/ 1A : RECTYP: RMB 1 ; Record type | |
| 963/ 1B : PSPEC: RMB 1 ; Processor spec. | |
| 964/ 1C : | |
| 965/ 1C : =>TRUE IF USE_REGCMD | |
| 966/ 1C : REGA: RMB 1 ; Accumulator A | |
| 967/ 1D : REGX: RMB 1 ; Index register X | |
| 968/ 1E : REGY: RMB 1 ; Index register Y | |
| 969/ 1F : REGSP: RMB 1 ; Stack pointer SP | |
| 970/ 20 : REGPC: RMB 2 ; Program counter PC | |
| 971/ 22 : REGPSR: RMB 1 ; Processor status register PSR | |
| 972/ 23 : | |
| 973/ 23 : REGSIZ: RMB 1 ; Register size | |
| 974/ 24 : [965] ENDIF | |
| 975/ 24 : | |
| 976/ 24 : DMPPT: RMB 2 | |
| 977/ 26 : CKSUM: RMB 1 ; Checksum | |
| 978/ 27 : | |
| 979/ 27 : PT0: RMB 2 ; Generic Pointer 0 | |
| 980/ 29 : PT1: RMB 2 ; Generic Pointer 1 | |
| 981/ 2B : CNT: RMB 1 ; Generic Counter | |
| 982/ 2C : | |
| 983/ 2C : END | |
| AS V1.42 Beta [Bld 158] - Source File unimon_6502.asm - Page 20 - 04/08/20 16:57:26 | |
| Symbol Table (* = unused): | |
| -------------------------- | |
| ACCR_I : 3 - | ACCR_V : 15 - | | |
| ACIACR : 8018 - | ACIADR : 8019 - | | |
| *ARCHITECTURE : x86_64-unknown-linux - | | |
| *BIGENDIAN : 0 - | *BRANCHEXT : 0 - | | |
| BRKMSG : E557 C | BS : 8 - | | |
| BUFLEN : 10 - | *CASESENSITIVE : 0 - | | |
| CKSUM : 26 C | CNT : 2B C | | |
| CO0 : E5F5 C | CONIN : E5E3 C | | |
| CONOUT : E5F4 C | CONST : E5EE C | | |
| *CONSTPI : 3.141592653589793 - | CR : D - | | |
| CRLF : E3F7 C | CSTART : E000 C | | |
| *DATE : 04/08/20 - | DEADDR : 12 C | | |
| DEL : 7F - | *DMPPT : 24 C | | |
| DP0 : E0E5 C | DP00 : E0D5 C | | |
| DP1 : E0FD C | DPB : E1A5 C | | |
| DPB0 : E1B6 C | DPB1 : E1C5 C | | |
| DPB2 : E1C9 C | DPBE : E1F4 C | | |
| DPL : E15B C | DPL0 : E174 C | | |
| DPL1 : E188 C | DPL2 : E198 C | | |
| DPL3 : E19D C | DPM : E11C C | | |
| DPM0 : E12A C | DPM1 : E150 C | | |
| DSADDR : 10 C | DSEP0 : E514 C | | |
| DSEP1 : E517 C | DSTATE : 14 C | | |
| DUMP : E0C3 C | ENTRY : FF80 - | | |
| ERR : E0B5 C | ERRMSG : E50C C | | |
| *E_CONIN : FFA0 C | *E_CONOUT : FF90 C | | |
| *E_CONST : FFA8 C | *E_CSTART : FF80 C | | |
| *E_STROUT : FF98 C | *E_WSTART : FF88 C | | |
| *FALSE : 0 - | *FULLPMMU : 1 - | | |
| G0 : E20F C | G00 : E203 C | | |
| GADDR : 15 C | GETLIN : E401 C | | |
| GL0 : E403 C | GLB : E42B C | | |
| GLE : E442 C | GO : E1F5 C | | |
| *HAS64 : 1 - | *HASDSP : 0 - | | |
| *HASFPU : 0 - | *HASPMMU : 0 - | | |
| HEXMOD : 19 C | HEXOUT1 : E3E8 C | | |
| HEXOUT2 : E3DF C | HEXOUTE : E3F4 C | | |
| IBIR : E4D2 C | ID2A03 : E070 C | | |
| ID65C : E050 C | IDE : E07A C | | |
| IDR65C : E063 C | *IHEMSG : E4F2 C | | |
| *IHEXER : E51B C | IM2A03 : E54E C | | |
| IM65 : E536 C | IM65C : E53D C | | |
| IMR65C : E545 C | INBUF : 0 C | | |
| *INEXTMODE : 0 - | INIT : E5D8 C | | |
| *INLWORDMODE : 0 - | *INMAXMODE : 0 - | | |
| *INSRCMODE : 0 - | *INSUPMODE : 0 - | | |
| IRQBRK : E49F C | LF : A - | | |
| *LISTON : 1 - | M00 : E0A0 C | | |
| M01 : E0A7 C | M02 : E0AE C | | |
| M05 : E0B5 C | *MACEXP : 7 - | | |
| *MOMCPU : 6502 - | *MOMCPUNAME : 6502 - | | |
| *NESTMAX : 100 - | OPNMSG : E4D4 C | | |
| *PACKING : 0 - | *PADDING : 1 - | | |
| PROMPT : E4EF C | PSPEC : 1B C | | |
| PT0 : 27 C | PT1 : 29 C | | |
| RDHEX : E460 C | RDSA : E55D C | | |
| RDSPC : E56F C | RDSPSR : E574 C | | |
| AS V1.42 Beta [Bld 158] - Source File unimon_6502.asm - Page 21 - 04/08/20 16:57:26 | |
| RDSSP : E568 C | RDSX : E560 C | | |
| RDSY : E564 C | RDUMP : E369 C | | |
| *RECTYP : 1A C | REG : E2AA C | | |
| REGA : 1C C | REGPC : 20 C | | |
| REGPSR : 22 C | REGSIZ : 23 C | | |
| REGSP : 1F C | REGX : 1D C | | |
| REGY : 1E C | *RELAXED : 0 - | | |
| RG0 : E2BB C | RG1 : E2C5 C | | |
| RG2 : E2DC C | RG3 : E2FC C | | |
| RG4 : E32F C | RG5 : E339 C | | |
| RG6 : E35B C | RG7 : E363 C | | |
| RGE : E2D8 C | RGE0 : E366 C | | |
| RGR : E363 C | RH0 : E468 C | | |
| RH1 : E480 C | RHE : E49E C | | |
| RNA : E5C8 C | RNPC : E5D1 C | | |
| RNPSR : E5D4 C | RNSP : E5CE C | | |
| RNTAB : E57A C | RNTABP : E5AA C | | |
| RNTABPS : E5BC C | RNTABS : E59E C | | |
| RNX : E5CA C | RNY : E5CC C | | |
| ROM_B : E000 - | SADDR : 17 C | | |
| SETM : E222 C | *SHEMSG : E4FF C | | |
| SKIPSP : E44A C | SM0 : E233 C | | |
| SM1 : E23F C | SM10 : E26C C | | |
| SM2 : E27C C | SM3 : E290 C | | |
| SM4 : E297 C | SM40 : E2A1 C | | |
| *SRECER : E529 C | SSE : E454 C | | |
| STACK : 1FF - | STRO0 : E3D3 C | | |
| STROE : E3DE C | STROUT : E3D1 C | | |
| *TARGET : 6502 - | *TIME : 16:57:26 - | | |
| *TRUE : 1 - | UPE : E45F C | | |
| UPPER : E455 C | USE_DEV_6551 : 0 - | | |
| USE_DEV_6850 : 1 - | USE_DEV_EMILY : 0 - | | |
| USE_IDENT : 1 - | USE_REGCMD : 1 - | | |
| *VERSION : 142F - | WORK_B : 0 - | | |
| WSTART : E07F C | | |
| 182 symbols | |
| 41 unused symbols | |
| AS V1.42 Beta [Bld 158] - Source File unimon_6502.asm - Page 22 - 04/08/20 16:57:26 | |
| Defined Functions: | |
| ------------------ | |
| HIGH | LOW | |
| AS V1.42 Beta [Bld 158] - Source File unimon_6502.asm - Page 23 - 04/08/20 16:57:26 | |
| Code Pages: | |
| ---------- | |
| STANDARD (0 changed characters) | |
| 1 code page | |
| 0.08 seconds assembly time | |
| 1098 lines source file | |
| 3 passes | |
| 0 errors | |
| 0 warnings |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment