mirror of
https://github.com/mist64/msbasic.git
synced 2025-01-13 22:31:18 +00:00
added AIM-65
This commit is contained in:
parent
df1bc2a243
commit
440442981d
19
aim65.cfg
Normal file
19
aim65.cfg
Normal file
@ -0,0 +1,19 @@
|
|||||||
|
MEMORY {
|
||||||
|
ZP: start = $0000, size = $0100, type = rw;
|
||||||
|
BASROM: start = $B000, size = $2000, fill = no, file = %O;
|
||||||
|
DUMMY: start = $0000, size = $00FF, file = "";
|
||||||
|
}
|
||||||
|
|
||||||
|
SEGMENTS {
|
||||||
|
ZEROPAGE: load = ZP, type = zp;
|
||||||
|
HEADER: load = BASROM, type = ro;
|
||||||
|
VECTORS: load = BASROM, type = ro;
|
||||||
|
KEYWORDS: load = BASROM, type = ro;
|
||||||
|
ERROR: load = BASROM, type = ro;
|
||||||
|
CODE: load = BASROM, type = ro;
|
||||||
|
CHRGET: load = BASROM, type = ro;
|
||||||
|
INIT: load = BASROM, type = ro;
|
||||||
|
EXTRA: load = BASROM, type = ro;
|
||||||
|
DUMMY: load = DUMMY; # don't include
|
||||||
|
}
|
||||||
|
|
5
aim65_extra.s
Normal file
5
aim65_extra.s
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
.segment "EXTRA"
|
||||||
|
|
||||||
|
LCFFA:
|
||||||
|
jsr CHRGOT
|
||||||
|
jmp LB89D
|
18
aim65_iscntc.s
Normal file
18
aim65_iscntc.s
Normal file
@ -0,0 +1,18 @@
|
|||||||
|
.segment "CODE"
|
||||||
|
ISCNTC:
|
||||||
|
lda DRA2
|
||||||
|
pha
|
||||||
|
lda #$7f
|
||||||
|
sta DRA2
|
||||||
|
pha
|
||||||
|
pla
|
||||||
|
lda DRB2
|
||||||
|
rol a
|
||||||
|
pla
|
||||||
|
sta DRA2
|
||||||
|
bcs RET2
|
||||||
|
|
||||||
|
jsr GETKEY
|
||||||
|
lda #$03
|
||||||
|
cmp #$03
|
||||||
|
;!!! runs into "STOP"
|
51
aim65_loadsave.s
Normal file
51
aim65_loadsave.s
Normal file
@ -0,0 +1,51 @@
|
|||||||
|
.segment "CODE"
|
||||||
|
|
||||||
|
SAVE:
|
||||||
|
pha
|
||||||
|
jsr WHEREO
|
||||||
|
jsr OUTSP
|
||||||
|
lda #$ff
|
||||||
|
jmp LB4BF
|
||||||
|
|
||||||
|
MONRDKEY:
|
||||||
|
lda INFLG
|
||||||
|
jsr COUT5
|
||||||
|
bne LOAD2
|
||||||
|
jmp INALL
|
||||||
|
LOAD2:
|
||||||
|
jmp CUREAD
|
||||||
|
|
||||||
|
MONCOUT:
|
||||||
|
pha
|
||||||
|
lda OUTFLG
|
||||||
|
jsr COUT5
|
||||||
|
bne COUT3
|
||||||
|
pla
|
||||||
|
jmp OUTALL
|
||||||
|
|
||||||
|
COUT3:
|
||||||
|
pla
|
||||||
|
cmp #LF
|
||||||
|
beq COUT6
|
||||||
|
cmp #CR
|
||||||
|
beq COUT4
|
||||||
|
jmp OUTPUT
|
||||||
|
COUT4:
|
||||||
|
jsr CRCK
|
||||||
|
lda #CR
|
||||||
|
rts
|
||||||
|
|
||||||
|
COUT5:
|
||||||
|
cmp #$54
|
||||||
|
beq COUT6
|
||||||
|
cmp #$55
|
||||||
|
beq COUT6
|
||||||
|
cmp #$4C
|
||||||
|
COUT6:
|
||||||
|
rts
|
||||||
|
|
||||||
|
MONRDKEY2:
|
||||||
|
jsr ROONEK
|
||||||
|
tya
|
||||||
|
beq COUT5
|
||||||
|
jmp GETKY
|
@ -19,6 +19,9 @@ KBD := 1
|
|||||||
.elseif .def(microtan)
|
.elseif .def(microtan)
|
||||||
MICROTAN := 1
|
MICROTAN := 1
|
||||||
.include "defines_microtan.s"
|
.include "defines_microtan.s"
|
||||||
|
.elseif .def(aim65)
|
||||||
|
AIM65 := 1
|
||||||
|
.include "defines_aim65.s"
|
||||||
.endif
|
.endif
|
||||||
|
|
||||||
.ifdef CONFIG_2C
|
.ifdef CONFIG_2C
|
||||||
@ -42,6 +45,7 @@ CONFIG_10A := 1
|
|||||||
|
|
||||||
.ifdef CONFIG_SMALL
|
.ifdef CONFIG_SMALL
|
||||||
BYTES_FP := 4
|
BYTES_FP := 4
|
||||||
|
CONFIG_SMALL_ERROR := 1
|
||||||
.else
|
.else
|
||||||
BYTES_FP := 5
|
BYTES_FP := 5
|
||||||
.endif
|
.endif
|
||||||
@ -60,6 +64,9 @@ MAX_EXPON = 10
|
|||||||
.endif
|
.endif
|
||||||
|
|
||||||
STACK := $0100
|
STACK := $0100
|
||||||
|
.ifndef STACK2
|
||||||
|
STACK2 := STACK
|
||||||
|
.endif
|
||||||
|
|
||||||
.ifdef INPUTBUFFER
|
.ifdef INPUTBUFFER
|
||||||
.if INPUTBUFFER >= $0100
|
.if INPUTBUFFER >= $0100
|
||||||
|
59
defines_aim65.s
Normal file
59
defines_aim65.s
Normal file
@ -0,0 +1,59 @@
|
|||||||
|
; configuration
|
||||||
|
CONFIG_2A := 1
|
||||||
|
|
||||||
|
CONFIG_NULL := 1
|
||||||
|
CONFIG_PRINT_CR := 1 ; print CR when line end reached
|
||||||
|
CONFIG_SAFE_NAMENOTFOUND := 1
|
||||||
|
CONFIG_SCRTCH_ORDER := 1
|
||||||
|
CONFIG_PEEK_SAVE_LINNUM := 1
|
||||||
|
CONFIG_SMALL_ERROR := 1
|
||||||
|
|
||||||
|
; zero page
|
||||||
|
ZP_START1 = $00
|
||||||
|
ZP_START2 = $10
|
||||||
|
ZP_START3 = $06
|
||||||
|
ZP_START4 = $5E
|
||||||
|
|
||||||
|
;extra ZP variables
|
||||||
|
USR := $03
|
||||||
|
TXPSV := LASTOP
|
||||||
|
|
||||||
|
NULL := IQERR
|
||||||
|
|
||||||
|
; inputbuffer
|
||||||
|
INPUTBUFFER := $0016
|
||||||
|
|
||||||
|
;extra stack
|
||||||
|
STACK2 := $0200
|
||||||
|
|
||||||
|
; constants
|
||||||
|
STACK_TOP := $FD
|
||||||
|
SPACE_FOR_GOSUB := $44
|
||||||
|
NULL_MAX := $F2 ; probably different in original version; the image I have seems
|
||||||
|
CRLF_1 := CR
|
||||||
|
CRLF_2 := LF
|
||||||
|
WIDTH := 20
|
||||||
|
WIDTH2 := 10
|
||||||
|
|
||||||
|
; memory layout
|
||||||
|
RAMSTART2 := $0211
|
||||||
|
|
||||||
|
; monitor functions
|
||||||
|
PRIFLG := $A411
|
||||||
|
INFLG := $A412
|
||||||
|
OUTFLG := $A413
|
||||||
|
DRA2 := $A480
|
||||||
|
DRB2 := $A482
|
||||||
|
|
||||||
|
DU13 := $E520
|
||||||
|
PSLS := $E7DC
|
||||||
|
LOAD := $E848
|
||||||
|
WHEREO := $E871
|
||||||
|
OUTPUT := $E97A
|
||||||
|
INALL := $E993
|
||||||
|
OUTALL := $E9BC
|
||||||
|
CRCK := $EA24
|
||||||
|
GETKEY := $EC40
|
||||||
|
GETKY := $EC43
|
||||||
|
ROONEK := $ECEF
|
||||||
|
CUREAD := $FE83
|
2
error.s
2
error.s
@ -1,6 +1,6 @@
|
|||||||
init_error_table
|
init_error_table
|
||||||
|
|
||||||
.ifdef CONFIG_SMALL
|
.ifdef CONFIG_SMALL_ERROR
|
||||||
define_error ERR_NOFOR, "NF"
|
define_error ERR_NOFOR, "NF"
|
||||||
define_error ERR_SYNTAX, "SN"
|
define_error ERR_SYNTAX, "SN"
|
||||||
define_error ERR_NOGOSUB, "RG"
|
define_error ERR_NOGOSUB, "RG"
|
||||||
|
4
extra.s
4
extra.s
@ -19,3 +19,7 @@
|
|||||||
.ifdef MICROTAN
|
.ifdef MICROTAN
|
||||||
.include "microtan_extra.s"
|
.include "microtan_extra.s"
|
||||||
.endif
|
.endif
|
||||||
|
|
||||||
|
.ifdef AIM65
|
||||||
|
.include "aim65_extra.s"
|
||||||
|
.endif
|
30
float.s
30
float.s
@ -1428,7 +1428,7 @@ FOUT1:
|
|||||||
bpl L3C73
|
bpl L3C73
|
||||||
lda #$2D
|
lda #$2D
|
||||||
L3C73:
|
L3C73:
|
||||||
sta $FF,y
|
sta STACK2-1,y
|
||||||
sta FACSIGN
|
sta FACSIGN
|
||||||
sty STRNG2
|
sty STRNG2
|
||||||
iny
|
iny
|
||||||
@ -1509,12 +1509,12 @@ L3CDF:
|
|||||||
ldy STRNG2
|
ldy STRNG2
|
||||||
lda #$2E
|
lda #$2E
|
||||||
iny
|
iny
|
||||||
sta $FF,y
|
sta STACK2-1,y
|
||||||
txa
|
txa
|
||||||
beq L3CF0
|
beq L3CF0
|
||||||
lda #$30
|
lda #$30
|
||||||
iny
|
iny
|
||||||
sta $FF,y
|
sta STACK2-1,y
|
||||||
L3CF0:
|
L3CF0:
|
||||||
sty STRNG2
|
sty STRNG2
|
||||||
; ----------------------------------------------------------------------------
|
; ----------------------------------------------------------------------------
|
||||||
@ -1564,12 +1564,12 @@ L3D23:
|
|||||||
iny
|
iny
|
||||||
tax
|
tax
|
||||||
and #$7F
|
and #$7F
|
||||||
sta $FF,y
|
sta STACK2-1,y
|
||||||
dec INDX
|
dec INDX
|
||||||
bne L3D3E
|
bne L3D3E
|
||||||
lda #$2E
|
lda #$2E
|
||||||
iny
|
iny
|
||||||
sta $FF,y
|
sta STACK2-1,y
|
||||||
L3D3E:
|
L3D3E:
|
||||||
sty STRNG2
|
sty STRNG2
|
||||||
ldy VARPNT
|
ldy VARPNT
|
||||||
@ -1591,7 +1591,7 @@ L3D3E:
|
|||||||
LDD96:
|
LDD96:
|
||||||
ldy STRNG2
|
ldy STRNG2
|
||||||
L3D4E:
|
L3D4E:
|
||||||
lda $FF,y
|
lda STACK2-1,y
|
||||||
dey
|
dey
|
||||||
cmp #$30
|
cmp #$30
|
||||||
beq L3D4E
|
beq L3D4E
|
||||||
@ -1609,9 +1609,9 @@ L3D5B:
|
|||||||
tax
|
tax
|
||||||
lda #$2D
|
lda #$2D
|
||||||
L3D6B:
|
L3D6B:
|
||||||
sta STACK+1,y
|
sta STACK2+1,y
|
||||||
lda #$45
|
lda #$45
|
||||||
sta STACK,y
|
sta STACK2,y
|
||||||
txa
|
txa
|
||||||
ldx #$2F
|
ldx #$2F
|
||||||
sec
|
sec
|
||||||
@ -1620,20 +1620,20 @@ L3D77:
|
|||||||
sbc #$0A
|
sbc #$0A
|
||||||
bcs L3D77
|
bcs L3D77
|
||||||
adc #$3A
|
adc #$3A
|
||||||
sta STACK+3,y
|
sta STACK2+3,y
|
||||||
txa
|
txa
|
||||||
sta STACK+2,y
|
sta STACK2+2,y
|
||||||
lda #$00
|
lda #$00
|
||||||
sta STACK+4,y
|
sta STACK2+4,y
|
||||||
beq L3D94
|
beq L3D94
|
||||||
FOUT4:
|
FOUT4:
|
||||||
sta $FF,y
|
sta STACK2-1,y
|
||||||
L3D8F:
|
L3D8F:
|
||||||
lda #$00
|
lda #$00
|
||||||
sta STACK,y
|
sta STACK2,y
|
||||||
L3D94:
|
L3D94:
|
||||||
lda #$00
|
lda #<STACK2
|
||||||
ldy #$01
|
ldy #>STACK2
|
||||||
rts
|
rts
|
||||||
|
|
||||||
; ----------------------------------------------------------------------------
|
; ----------------------------------------------------------------------------
|
||||||
|
2
flow1.s
2
flow1.s
@ -299,6 +299,7 @@ LE68E:
|
|||||||
rts
|
rts
|
||||||
.endif
|
.endif
|
||||||
|
|
||||||
|
.ifndef AIM65
|
||||||
.if .def(CONFIG_NULL) || .def(CONFIG_PRINTNULLS)
|
.if .def(CONFIG_NULL) || .def(CONFIG_PRINTNULLS)
|
||||||
; CBM1 has the keyword removed,
|
; CBM1 has the keyword removed,
|
||||||
; but the code is still here
|
; but the code is still here
|
||||||
@ -319,3 +320,4 @@ CLEAR:
|
|||||||
bne RET1
|
bne RET1
|
||||||
jmp CLEARC
|
jmp CLEARC
|
||||||
.endif
|
.endif
|
||||||
|
.endif
|
||||||
|
5
header.s
5
header.s
@ -3,3 +3,8 @@
|
|||||||
jmp LE68C
|
jmp LE68C
|
||||||
.byte $00,$13,$56
|
.byte $00,$13,$56
|
||||||
.endif
|
.endif
|
||||||
|
.ifdef AIM65
|
||||||
|
jmp COLD_START
|
||||||
|
jmp RESTART
|
||||||
|
.word AYINT,GIVAYF
|
||||||
|
.endif
|
||||||
|
69
init.s
69
init.s
@ -10,11 +10,13 @@ FNDLIN2:
|
|||||||
PR_WRITTEN_BY:
|
PR_WRITTEN_BY:
|
||||||
.ifndef KBD
|
.ifndef KBD
|
||||||
.ifndef CONFIG_CBM_ALL
|
.ifndef CONFIG_CBM_ALL
|
||||||
|
.ifndef AIM65
|
||||||
lda #<QT_WRITTEN_BY
|
lda #<QT_WRITTEN_BY
|
||||||
ldy #>QT_WRITTEN_BY
|
ldy #>QT_WRITTEN_BY
|
||||||
jsr STROUT
|
jsr STROUT
|
||||||
.endif
|
.endif
|
||||||
.endif
|
.endif
|
||||||
|
.endif
|
||||||
COLD_START:
|
COLD_START:
|
||||||
.ifdef KBD
|
.ifdef KBD
|
||||||
lda #<LFD81
|
lda #<LFD81
|
||||||
@ -34,6 +36,8 @@ COLD_START:
|
|||||||
.endif
|
.endif
|
||||||
.ifdef CONFIG_NO_INPUTBUFFER_ZP
|
.ifdef CONFIG_NO_INPUTBUFFER_ZP
|
||||||
ldx #$FB
|
ldx #$FB
|
||||||
|
.elseif .def(AIM65)
|
||||||
|
ldx #$FE
|
||||||
.endif
|
.endif
|
||||||
txs
|
txs
|
||||||
.ifndef CONFIG_CBM_ALL
|
.ifndef CONFIG_CBM_ALL
|
||||||
@ -41,6 +45,7 @@ COLD_START:
|
|||||||
ldy #>COLD_START
|
ldy #>COLD_START
|
||||||
sta GORESTART+1
|
sta GORESTART+1
|
||||||
sty GORESTART+2
|
sty GORESTART+2
|
||||||
|
.ifndef AIM65
|
||||||
sta GOSTROUT+1
|
sta GOSTROUT+1
|
||||||
sty GOSTROUT+2
|
sty GOSTROUT+2
|
||||||
lda #<AYINT
|
lda #<AYINT
|
||||||
@ -51,12 +56,18 @@ COLD_START:
|
|||||||
ldy #>GIVAYF
|
ldy #>GIVAYF
|
||||||
sta GOGIVEAYF
|
sta GOGIVEAYF
|
||||||
sty GOGIVEAYF+1
|
sty GOGIVEAYF+1
|
||||||
|
.endif
|
||||||
.endif
|
.endif
|
||||||
lda #$4C
|
lda #$4C
|
||||||
.ifdef CONFIG_CBM_ALL
|
.ifdef CONFIG_CBM_ALL
|
||||||
sta JMPADRS
|
sta JMPADRS
|
||||||
.endif
|
.endif
|
||||||
sta GORESTART
|
sta GORESTART
|
||||||
|
.ifdef AIM65
|
||||||
|
sta JMPADRS
|
||||||
|
sta ATN
|
||||||
|
sta GOSTROUT
|
||||||
|
.else
|
||||||
.ifndef CONFIG_CBM_ALL
|
.ifndef CONFIG_CBM_ALL
|
||||||
sta GOSTROUT
|
sta GOSTROUT
|
||||||
sta JMPADRS
|
sta JMPADRS
|
||||||
@ -64,6 +75,7 @@ COLD_START:
|
|||||||
.if (!.def(CONFIG_RAM)) && (!.def(CONFIG_CBM_ALL))
|
.if (!.def(CONFIG_RAM)) && (!.def(CONFIG_CBM_ALL))
|
||||||
sta USR
|
sta USR
|
||||||
.endif
|
.endif
|
||||||
|
.endif
|
||||||
|
|
||||||
.ifndef CONFIG_RAM
|
.ifndef CONFIG_RAM
|
||||||
.ifdef APPLE
|
.ifdef APPLE
|
||||||
@ -73,16 +85,23 @@ COLD_START:
|
|||||||
lda #<IQERR
|
lda #<IQERR
|
||||||
ldy #>IQERR
|
ldy #>IQERR
|
||||||
.endif
|
.endif
|
||||||
|
.ifdef AIM65
|
||||||
|
sta ATN+1
|
||||||
|
sty ATN+2
|
||||||
|
sta GOSTROUT+1
|
||||||
|
sty GOSTROUT+2
|
||||||
|
.else
|
||||||
sta USR+1
|
sta USR+1
|
||||||
sty USR+2
|
sty USR+2
|
||||||
.endif
|
.endif
|
||||||
|
.endif
|
||||||
.ifndef CBM1
|
.ifndef CBM1
|
||||||
lda #WIDTH
|
lda #WIDTH
|
||||||
sta Z17
|
sta Z17
|
||||||
lda #WIDTH2
|
lda #WIDTH2
|
||||||
sta Z18
|
sta Z18
|
||||||
.endif
|
.endif
|
||||||
.endif /* KBD */
|
.endif
|
||||||
|
|
||||||
; All non-CONFIG_SMALL versions of BASIC have
|
; All non-CONFIG_SMALL versions of BASIC have
|
||||||
; the same bug here: While the number of bytes
|
; the same bug here: While the number of bytes
|
||||||
@ -125,19 +144,23 @@ L4098:
|
|||||||
sta CURDVC
|
sta CURDVC
|
||||||
.endif
|
.endif
|
||||||
sta LASTPT+1
|
sta LASTPT+1
|
||||||
|
.ifndef AIM65
|
||||||
.if .defined(CONFIG_NULL) || .defined(CONFIG_PRINTNULLS)
|
.if .defined(CONFIG_NULL) || .defined(CONFIG_PRINTNULLS)
|
||||||
sta Z15
|
sta Z15
|
||||||
.endif
|
.endif
|
||||||
|
.endif
|
||||||
.ifndef CONFIG_11
|
.ifndef CONFIG_11
|
||||||
sta POSX
|
sta POSX
|
||||||
.endif
|
.endif
|
||||||
pha
|
pha
|
||||||
sta Z14
|
sta Z14
|
||||||
.ifndef CBM2
|
.ifndef CBM2
|
||||||
|
.ifndef AIM65
|
||||||
.ifndef MICROTAN
|
.ifndef MICROTAN
|
||||||
lda #$03
|
lda #$03
|
||||||
sta DSCLEN
|
sta DSCLEN
|
||||||
.endif
|
.endif
|
||||||
|
.endif
|
||||||
.ifndef CONFIG_11
|
.ifndef CONFIG_11
|
||||||
lda #$2C
|
lda #$2C
|
||||||
sta LINNUM+1
|
sta LINNUM+1
|
||||||
@ -168,8 +191,10 @@ L4098:
|
|||||||
stx TXTPTR
|
stx TXTPTR
|
||||||
sty TXTPTR+1
|
sty TXTPTR+1
|
||||||
jsr CHRGET
|
jsr CHRGET
|
||||||
|
.ifndef AIM65
|
||||||
cmp #$41
|
cmp #$41
|
||||||
beq PR_WRITTEN_BY
|
beq PR_WRITTEN_BY
|
||||||
|
.endif
|
||||||
tay
|
tay
|
||||||
bne L40EE
|
bne L40EE
|
||||||
.endif
|
.endif
|
||||||
@ -202,6 +227,12 @@ L40D7:
|
|||||||
; optimized version of the CBM1 code
|
; optimized version of the CBM1 code
|
||||||
bmi L40FA
|
bmi L40FA
|
||||||
.endif
|
.endif
|
||||||
|
.if .def(AIM65)
|
||||||
|
; AIM65: hard RAM top limit is $A000
|
||||||
|
lda LINNUM+1
|
||||||
|
cmp #$A0
|
||||||
|
beq L40FA
|
||||||
|
.endif
|
||||||
L40DD:
|
L40DD:
|
||||||
.ifdef CONFIG_2
|
.ifdef CONFIG_2
|
||||||
lda #$55 ; 01010101 / 10101010
|
lda #$55 ; 01010101 / 10101010
|
||||||
@ -236,7 +267,7 @@ L40FA:
|
|||||||
ldy LINNUM+1
|
ldy LINNUM+1
|
||||||
sta MEMSIZ
|
sta MEMSIZ
|
||||||
sty MEMSIZ+1
|
sty MEMSIZ+1
|
||||||
.ifndef MICROTAN
|
.if !(.def(MICROTAN) || .def(AIM65))
|
||||||
sta FRETOP
|
sta FRETOP
|
||||||
sty FRETOP+1
|
sty FRETOP+1
|
||||||
.endif
|
.endif
|
||||||
@ -267,10 +298,18 @@ L4106:
|
|||||||
L2829:
|
L2829:
|
||||||
sta Z17
|
sta Z17
|
||||||
L4129:
|
L4129:
|
||||||
|
.ifdef AIM65
|
||||||
|
sbc #$0A
|
||||||
|
.else
|
||||||
sbc #$0E
|
sbc #$0E
|
||||||
|
.endif
|
||||||
bcs L4129
|
bcs L4129
|
||||||
eor #$FF
|
eor #$FF
|
||||||
|
.ifdef AIM65
|
||||||
|
sbc #$08
|
||||||
|
.else
|
||||||
sbc #$0C
|
sbc #$0C
|
||||||
|
.endif
|
||||||
clc
|
clc
|
||||||
adc Z17
|
adc Z17
|
||||||
sta Z18
|
sta Z18
|
||||||
@ -355,6 +394,12 @@ L4192:
|
|||||||
.endif
|
.endif
|
||||||
.ifdef CONFIG_CBM_ALL
|
.ifdef CONFIG_CBM_ALL
|
||||||
jmp RESTART
|
jmp RESTART
|
||||||
|
.elseif .def(AIM65)
|
||||||
|
lda #<CRDO
|
||||||
|
ldy #>CRDO
|
||||||
|
sta GORESTART+1
|
||||||
|
sty GORESTART+2
|
||||||
|
jmp RESTART
|
||||||
.else
|
.else
|
||||||
lda #<STROUT
|
lda #<STROUT
|
||||||
ldy #>STROUT
|
ldy #>STROUT
|
||||||
@ -379,6 +424,7 @@ QT_WANT:
|
|||||||
.endif
|
.endif
|
||||||
QT_WRITTEN_BY:
|
QT_WRITTEN_BY:
|
||||||
.ifndef CONFIG_CBM_ALL
|
.ifndef CONFIG_CBM_ALL
|
||||||
|
.ifndef AIM65
|
||||||
.ifdef APPLE
|
.ifdef APPLE
|
||||||
asc80 "COPYRIGHT 1977 BY MICROSOFT CO"
|
asc80 "COPYRIGHT 1977 BY MICROSOFT CO"
|
||||||
.byte CR,0
|
.byte CR,0
|
||||||
@ -391,11 +437,15 @@ QT_WRITTEN_BY:
|
|||||||
.endif
|
.endif
|
||||||
.byte CR,LF,0
|
.byte CR,LF,0
|
||||||
.endif
|
.endif
|
||||||
|
.endif
|
||||||
QT_MEMORY_SIZE:
|
QT_MEMORY_SIZE:
|
||||||
.byte "MEMORY SIZE"
|
.byte "MEMORY SIZE"
|
||||||
.byte 0
|
.byte 0
|
||||||
QT_TERMINAL_WIDTH:
|
QT_TERMINAL_WIDTH:
|
||||||
.byte "TERMINAL WIDTH"
|
.ifndef AIM65
|
||||||
|
.byte "TERMINAL "
|
||||||
|
.endif
|
||||||
|
.byte "WIDTH"
|
||||||
.byte 0
|
.byte 0
|
||||||
.endif
|
.endif
|
||||||
QT_BYTES_FREE:
|
QT_BYTES_FREE:
|
||||||
@ -418,6 +468,9 @@ QT_BASIC:
|
|||||||
.ifdef MICROTAN
|
.ifdef MICROTAN
|
||||||
.byte "MICROTAN BASIC"
|
.byte "MICROTAN BASIC"
|
||||||
.endif
|
.endif
|
||||||
|
.ifdef AIM65
|
||||||
|
.byte " AIM 65 BASIC V1.1"
|
||||||
|
.endif
|
||||||
.ifdef CBM1
|
.ifdef CBM1
|
||||||
.byte $13 ; HOME
|
.byte $13 ; HOME
|
||||||
.byte "*** COMMODORE BASIC ***"
|
.byte "*** COMMODORE BASIC ***"
|
||||||
@ -435,9 +488,15 @@ QT_BASIC:
|
|||||||
.byte CR,LF
|
.byte CR,LF
|
||||||
.ifdef MICROTAN
|
.ifdef MICROTAN
|
||||||
.byte "(C) 1980 MICROSOFT"
|
.byte "(C) 1980 MICROSOFT"
|
||||||
|
.elseif .def(AIM65)
|
||||||
|
.byte 0
|
||||||
|
.byte "(C) 1978 MICROSOFT"
|
||||||
.else
|
.else
|
||||||
.byte "COPYRIGHT 1977 BY MICROSOFT CO."
|
.byte "COPYRIGHT 1977 BY MICROSOFT CO."
|
||||||
.endif
|
.endif
|
||||||
.byte CR,LF,0
|
.byte CR,LF
|
||||||
|
.ifndef AIM65
|
||||||
|
.byte 0
|
||||||
|
.endif
|
||||||
|
.endif
|
||||||
.endif
|
.endif
|
||||||
.endif /* KBD */
|
|
||||||
|
35
inline.s
35
inline.s
@ -6,7 +6,15 @@ L2420:
|
|||||||
jsr OUTDO
|
jsr OUTDO
|
||||||
.endif
|
.endif
|
||||||
dex
|
dex
|
||||||
|
.ifdef AIM65
|
||||||
|
bmi L2423
|
||||||
|
jsr PSLS
|
||||||
|
jmp INLIN2
|
||||||
|
LB35F:
|
||||||
|
jsr OUTDO
|
||||||
|
.else
|
||||||
bpl INLIN2
|
bpl INLIN2
|
||||||
|
.endif
|
||||||
L2423:
|
L2423:
|
||||||
.ifdef OSI
|
.ifdef OSI
|
||||||
jsr OUTDO
|
jsr OUTDO
|
||||||
@ -39,6 +47,13 @@ L0C32:
|
|||||||
ldx #$00
|
ldx #$00
|
||||||
INLIN2:
|
INLIN2:
|
||||||
jsr GETLN
|
jsr GETLN
|
||||||
|
.ifdef AIM65
|
||||||
|
cmp #$1A
|
||||||
|
bne INLINAIM
|
||||||
|
jsr DU13
|
||||||
|
jmp INLIN
|
||||||
|
INLINAIM:
|
||||||
|
.endif
|
||||||
.ifndef CONFIG_NO_LINE_EDITING
|
.ifndef CONFIG_NO_LINE_EDITING
|
||||||
cmp #$07
|
cmp #$07
|
||||||
beq L2443
|
beq L2443
|
||||||
@ -47,14 +62,25 @@ INLIN2:
|
|||||||
beq L2453
|
beq L2453
|
||||||
.ifndef CONFIG_NO_LINE_EDITING
|
.ifndef CONFIG_NO_LINE_EDITING
|
||||||
cmp #$20
|
cmp #$20
|
||||||
|
.ifdef AIM65
|
||||||
|
bcc L244E
|
||||||
|
.else
|
||||||
bcc INLIN2
|
bcc INLIN2
|
||||||
|
.endif
|
||||||
.ifdef MICROTAN
|
.ifdef MICROTAN
|
||||||
cmp #$80
|
cmp #$80
|
||||||
.else
|
.else
|
||||||
|
.ifdef AIM65
|
||||||
|
cmp #$7F
|
||||||
|
beq L2420
|
||||||
|
.endif
|
||||||
cmp #$7D
|
cmp #$7D
|
||||||
.endif
|
.endif
|
||||||
bcs INLIN2
|
bcs INLIN2
|
||||||
cmp #$40 ; @
|
cmp #$40 ; @
|
||||||
|
.ifdef AIM65
|
||||||
|
beq LB35F
|
||||||
|
.else
|
||||||
beq L2423
|
beq L2423
|
||||||
.ifdef MICROTAN
|
.ifdef MICROTAN
|
||||||
cmp #$7F ; DEL
|
cmp #$7F ; DEL
|
||||||
@ -62,6 +88,7 @@ INLIN2:
|
|||||||
cmp #$5F ; _
|
cmp #$5F ; _
|
||||||
.endif
|
.endif
|
||||||
beq L2420
|
beq L2420
|
||||||
|
.endif
|
||||||
L2443:
|
L2443:
|
||||||
.ifdef MICROTAN
|
.ifdef MICROTAN
|
||||||
cpx #$4F
|
cpx #$4F
|
||||||
@ -73,6 +100,9 @@ L2443:
|
|||||||
sta INPUTBUFFER,x
|
sta INPUTBUFFER,x
|
||||||
inx
|
inx
|
||||||
.ifdef OSI
|
.ifdef OSI
|
||||||
|
.byte $2C
|
||||||
|
.elseif .def(AIM65)
|
||||||
|
|
||||||
.byte $2C
|
.byte $2C
|
||||||
.else
|
.else
|
||||||
bne INLIN2
|
bne INLIN2
|
||||||
@ -80,6 +110,7 @@ L2443:
|
|||||||
L244C:
|
L244C:
|
||||||
.ifndef CONFIG_NO_LINE_EDITING
|
.ifndef CONFIG_NO_LINE_EDITING
|
||||||
lda #$07 ; BEL
|
lda #$07 ; BEL
|
||||||
|
L244E:
|
||||||
jsr OUTDO
|
jsr OUTDO
|
||||||
bne INLIN2
|
bne INLIN2
|
||||||
.endif
|
.endif
|
||||||
@ -115,7 +146,7 @@ GETLN:
|
|||||||
nop
|
nop
|
||||||
and #$7F
|
and #$7F
|
||||||
.endif
|
.endif
|
||||||
.endif /* APPLE */
|
.endif
|
||||||
.ifdef APPLE
|
.ifdef APPLE
|
||||||
RDKEY:
|
RDKEY:
|
||||||
jsr LFD0C
|
jsr LFD0C
|
||||||
@ -130,4 +161,4 @@ RDKEY:
|
|||||||
pla
|
pla
|
||||||
L2465:
|
L2465:
|
||||||
rts
|
rts
|
||||||
.endif /* KBD */
|
.endif
|
||||||
|
10
input.s
10
input.s
@ -111,6 +111,11 @@ LCAE0:
|
|||||||
INPUT:
|
INPUT:
|
||||||
.ifndef KBD
|
.ifndef KBD
|
||||||
lsr Z14
|
lsr Z14
|
||||||
|
.endif
|
||||||
|
.ifdef AIM65
|
||||||
|
lda PRIFLG
|
||||||
|
sta ZBE
|
||||||
|
jsr LCFFA
|
||||||
.endif
|
.endif
|
||||||
cmp #$22
|
cmp #$22
|
||||||
bne L2A9E
|
bne L2A9E
|
||||||
@ -231,6 +236,8 @@ PROCESS_INPUT_ITEM:
|
|||||||
bvc L2AF0
|
bvc L2AF0
|
||||||
.ifdef MICROTAN
|
.ifdef MICROTAN
|
||||||
jsr MONRDKEY2
|
jsr MONRDKEY2
|
||||||
|
.elseif .def(AIM65)
|
||||||
|
jsr MONRDKEY2
|
||||||
.else
|
.else
|
||||||
jsr MONRDKEY
|
jsr MONRDKEY
|
||||||
.endif
|
.endif
|
||||||
@ -392,6 +399,9 @@ INPDONE:
|
|||||||
jmp SETDA
|
jmp SETDA
|
||||||
L2B94:
|
L2B94:
|
||||||
ldy #$00
|
ldy #$00
|
||||||
|
.ifdef AIM65
|
||||||
|
jsr LB8B1
|
||||||
|
.endif
|
||||||
lda (INPTR),y
|
lda (INPTR),y
|
||||||
beq L2BA1
|
beq L2BA1
|
||||||
.ifdef CONFIG_FILE
|
.ifdef CONFIG_FILE
|
||||||
|
3
iscntc.s
3
iscntc.s
@ -20,4 +20,7 @@
|
|||||||
.ifdef MICROTAN
|
.ifdef MICROTAN
|
||||||
.include "microtan_iscntc.s"
|
.include "microtan_iscntc.s"
|
||||||
.endif
|
.endif
|
||||||
|
.ifdef AIM65
|
||||||
|
.include "aim65_iscntc.s"
|
||||||
|
.endif
|
||||||
;!!! runs into "STOP"
|
;!!! runs into "STOP"
|
@ -9,3 +9,6 @@
|
|||||||
.ifdef MICROTAN
|
.ifdef MICROTAN
|
||||||
.include "microtan_loadsave.s"
|
.include "microtan_loadsave.s"
|
||||||
.endif
|
.endif
|
||||||
|
.ifdef AIM65
|
||||||
|
.include "aim65_loadsave.s"
|
||||||
|
.endif
|
2
make.sh
2
make.sh
@ -2,7 +2,7 @@ if [ ! -d tmp ]; then
|
|||||||
mkdir tmp
|
mkdir tmp
|
||||||
fi
|
fi
|
||||||
|
|
||||||
for i in cbmbasic1 cbmbasic2 kbdbasic osi kb9 applesoft microtan; do
|
for i in cbmbasic1 cbmbasic2 kbdbasic osi kb9 applesoft microtan aim65; do
|
||||||
|
|
||||||
echo $i
|
echo $i
|
||||||
ca65 -D $i msbasic.s -o tmp/$i.o &&
|
ca65 -D $i msbasic.s -o tmp/$i.o &&
|
||||||
|
@ -30,6 +30,7 @@ OKPRT:
|
|||||||
rts
|
rts
|
||||||
nop
|
nop
|
||||||
.else
|
.else
|
||||||
|
.ifndef AIM65
|
||||||
QT_OK:
|
QT_OK:
|
||||||
.ifdef CONFIG_CBM_ALL
|
.ifdef CONFIG_CBM_ALL
|
||||||
.byte CR,LF,"READY.",CR,LF
|
.byte CR,LF,"READY.",CR,LF
|
||||||
@ -43,14 +44,14 @@ QT_OK:
|
|||||||
.endif
|
.endif
|
||||||
.byte 0
|
.byte 0
|
||||||
.endif
|
.endif
|
||||||
|
.endif
|
||||||
QT_BREAK:
|
QT_BREAK:
|
||||||
|
|
||||||
.ifdef KBD
|
.ifdef KBD
|
||||||
.byte CR,LF," Brk"
|
.byte CR,LF," Brk"
|
||||||
.byte 0
|
.byte 0
|
||||||
.byte $54,$D0 ; ???
|
.byte $54,$D0 ; ???
|
||||||
.elseif .def(MICROTAN)
|
.elseif .def(MICROTAN) || .def(AIM65)
|
||||||
.byte CR,LF," BREAK"
|
.byte CR,LF," BREAK"
|
||||||
.byte 0
|
.byte 0
|
||||||
.else
|
.else
|
||||||
|
10
misc1.s
10
misc1.s
@ -203,7 +203,17 @@ L2963:
|
|||||||
iny
|
iny
|
||||||
lda (DSCPTR),y
|
lda (DSCPTR),y
|
||||||
sta (FORPNT),y
|
sta (FORPNT),y
|
||||||
|
RET5:
|
||||||
rts
|
rts
|
||||||
|
.ifdef AIM65
|
||||||
|
LB89D:
|
||||||
|
cmp #$21
|
||||||
|
bne RET5
|
||||||
|
lda #$80
|
||||||
|
sta PRIFLG
|
||||||
|
jmp CHRGET
|
||||||
|
.endif
|
||||||
|
|
||||||
.ifdef CONFIG_FILE
|
.ifdef CONFIG_FILE
|
||||||
PRINTH:
|
PRINTH:
|
||||||
jsr CMD
|
jsr CMD
|
||||||
|
BIN
orig/aim65.bin
Normal file
BIN
orig/aim65.bin
Normal file
Binary file not shown.
2
poke.s
2
poke.s
@ -115,4 +115,4 @@ L362C:
|
|||||||
beq L362C
|
beq L362C
|
||||||
RTS3:
|
RTS3:
|
||||||
rts
|
rts
|
||||||
.endif /* KBD */
|
.endif
|
||||||
|
28
print.s
28
print.s
@ -1,5 +1,16 @@
|
|||||||
.segment "CODE"
|
.segment "CODE"
|
||||||
|
|
||||||
|
.ifdef AIM65
|
||||||
|
PRINT:
|
||||||
|
lda PRIFLG
|
||||||
|
sta ZBE
|
||||||
|
jsr L297E
|
||||||
|
LB8B1:
|
||||||
|
lda ZBE
|
||||||
|
sta PRIFLG
|
||||||
|
rts
|
||||||
|
.endif
|
||||||
|
|
||||||
PRSTRING:
|
PRSTRING:
|
||||||
jsr STRPRT
|
jsr STRPRT
|
||||||
L297E:
|
L297E:
|
||||||
@ -8,10 +19,16 @@ L297E:
|
|||||||
; ----------------------------------------------------------------------------
|
; ----------------------------------------------------------------------------
|
||||||
; "PRINT" STATEMENT
|
; "PRINT" STATEMENT
|
||||||
; ----------------------------------------------------------------------------
|
; ----------------------------------------------------------------------------
|
||||||
|
.ifndef AIM65
|
||||||
PRINT:
|
PRINT:
|
||||||
|
.endif
|
||||||
beq CRDO
|
beq CRDO
|
||||||
PRINT2:
|
PRINT2:
|
||||||
beq L29DD
|
beq L29DD
|
||||||
|
.ifdef AIM65
|
||||||
|
jsr LB89D
|
||||||
|
beq L29DD
|
||||||
|
.endif
|
||||||
cmp #TOKEN_TAB
|
cmp #TOKEN_TAB
|
||||||
beq L29F5
|
beq L29F5
|
||||||
cmp #TOKEN_SPC
|
cmp #TOKEN_SPC
|
||||||
@ -119,6 +136,10 @@ PRINTNULLS:
|
|||||||
lda #$00
|
lda #$00
|
||||||
sta POSX
|
sta POSX
|
||||||
eor #$FF
|
eor #$FF
|
||||||
|
.elseif .def(AIM65)
|
||||||
|
lda #$00
|
||||||
|
sta POSX
|
||||||
|
eor #$FF
|
||||||
.else
|
.else
|
||||||
.if .def(CONFIG_NULL) || .def(CONFIG_PRINTNULLS)
|
.if .def(CONFIG_NULL) || .def(CONFIG_PRINTNULLS)
|
||||||
.ifdef CONFIG_FILE
|
.ifdef CONFIG_FILE
|
||||||
@ -167,7 +188,7 @@ L29EA:
|
|||||||
.endif
|
.endif
|
||||||
sec
|
sec
|
||||||
L29EB:
|
L29EB:
|
||||||
.ifdef CONFIG_CBM_ALL
|
.if .def(CONFIG_CBM_ALL) || .def(AIM65)
|
||||||
sbc #$0A
|
sbc #$0A
|
||||||
.else
|
.else
|
||||||
.ifdef KBD
|
.ifdef KBD
|
||||||
@ -327,7 +348,10 @@ LCA6A:
|
|||||||
lda POSX
|
lda POSX
|
||||||
cmp Z17
|
cmp Z17
|
||||||
bne L2A4C
|
bne L2A4C
|
||||||
.ifdef APPLE
|
.ifdef AIM65
|
||||||
|
lda #$00
|
||||||
|
sta POSX
|
||||||
|
.elseif .def(APPLE)
|
||||||
nop ; PATCH!
|
nop ; PATCH!
|
||||||
nop ; don't print CR
|
nop ; don't print CR
|
||||||
nop
|
nop
|
||||||
|
41
program.s
41
program.s
@ -32,12 +32,12 @@ LC366:
|
|||||||
jsr OUTQUES
|
jsr OUTQUES
|
||||||
L2329:
|
L2329:
|
||||||
lda ERROR_MESSAGES,x
|
lda ERROR_MESSAGES,x
|
||||||
.ifndef CONFIG_SMALL
|
.ifndef CONFIG_SMALL_ERROR
|
||||||
pha
|
pha
|
||||||
and #$7F
|
and #$7F
|
||||||
.endif
|
.endif
|
||||||
jsr OUTDO
|
jsr OUTDO
|
||||||
.ifdef CONFIG_SMALL
|
.ifdef CONFIG_SMALL_ERROR
|
||||||
lda ERROR_MESSAGES+1,x
|
lda ERROR_MESSAGES+1,x
|
||||||
.ifdef KBD
|
.ifdef KBD
|
||||||
and #$7F
|
and #$7F
|
||||||
@ -79,6 +79,7 @@ LE28E:
|
|||||||
bpl RESTART
|
bpl RESTART
|
||||||
.else
|
.else
|
||||||
lsr Z14
|
lsr Z14
|
||||||
|
.ifndef AIM65
|
||||||
lda #<QT_OK
|
lda #<QT_OK
|
||||||
ldy #>QT_OK
|
ldy #>QT_OK
|
||||||
.ifdef CONFIG_CBM_ALL
|
.ifdef CONFIG_CBM_ALL
|
||||||
@ -86,6 +87,9 @@ LE28E:
|
|||||||
.else
|
.else
|
||||||
jsr GOSTROUT
|
jsr GOSTROUT
|
||||||
.endif
|
.endif
|
||||||
|
.else
|
||||||
|
jsr GORESTART
|
||||||
|
.endif
|
||||||
L2351:
|
L2351:
|
||||||
jsr INLIN
|
jsr INLIN
|
||||||
.endif
|
.endif
|
||||||
@ -639,9 +643,20 @@ LIST:
|
|||||||
L25A6:
|
L25A6:
|
||||||
jsr CRDO
|
jsr CRDO
|
||||||
.else
|
.else
|
||||||
|
.ifdef AIM65
|
||||||
|
pha
|
||||||
|
lda #$00
|
||||||
|
LB4BF:
|
||||||
|
sta INPUTFLG
|
||||||
|
pla
|
||||||
|
.endif
|
||||||
.ifdef MICROTAN
|
.ifdef MICROTAN
|
||||||
php
|
php
|
||||||
jmp LE21C ; patch
|
jmp LE21C ; patch
|
||||||
|
LC57E:
|
||||||
|
.elseif .def(AIM65)
|
||||||
|
php
|
||||||
|
jsr LINGET
|
||||||
LC57E:
|
LC57E:
|
||||||
.else
|
.else
|
||||||
bcc L2581
|
bcc L2581
|
||||||
@ -652,12 +667,12 @@ L2581:
|
|||||||
jsr LINGET
|
jsr LINGET
|
||||||
.endif
|
.endif
|
||||||
jsr FNDLIN
|
jsr FNDLIN
|
||||||
.ifdef MICROTAN
|
.if .def(MICROTAN) || .def(AIM65)
|
||||||
plp
|
plp
|
||||||
beq L2598
|
beq L2598
|
||||||
.endif
|
.endif
|
||||||
jsr CHRGOT
|
jsr CHRGOT
|
||||||
.ifdef MICROTAN
|
.if .def(MICROTAN) || .def(AIM65)
|
||||||
beq L25A6
|
beq L25A6
|
||||||
.else
|
.else
|
||||||
beq L2598
|
beq L2598
|
||||||
@ -665,7 +680,7 @@ L2581:
|
|||||||
cmp #TOKEN_MINUS
|
cmp #TOKEN_MINUS
|
||||||
bne L2520
|
bne L2520
|
||||||
jsr CHRGET
|
jsr CHRGET
|
||||||
.ifdef MICROTAN
|
.if .def(MICROTAN) || .def(AIM65)
|
||||||
beq L2598
|
beq L2598
|
||||||
jsr LINGET
|
jsr LINGET
|
||||||
beq L25A6
|
beq L25A6
|
||||||
@ -675,7 +690,7 @@ L2581:
|
|||||||
bne L2520
|
bne L2520
|
||||||
.endif
|
.endif
|
||||||
L2598:
|
L2598:
|
||||||
.ifndef MICROTAN
|
.if !(.def(MICROTAN) || .def(AIM65))
|
||||||
pla
|
pla
|
||||||
pla
|
pla
|
||||||
lda LINNUM
|
lda LINNUM
|
||||||
@ -686,7 +701,7 @@ L2598:
|
|||||||
sta LINNUM
|
sta LINNUM
|
||||||
sta LINNUM+1
|
sta LINNUM+1
|
||||||
L25A6:
|
L25A6:
|
||||||
.ifdef MICROTAN
|
.if .def(MICROTAN) || .def(AIM65)
|
||||||
pla
|
pla
|
||||||
pla
|
pla
|
||||||
.endif
|
.endif
|
||||||
@ -749,12 +764,22 @@ LA519:
|
|||||||
lda (LOWTRX),y
|
lda (LOWTRX),y
|
||||||
stx LOWTRX
|
stx LOWTRX
|
||||||
sta LOWTRX+1
|
sta LOWTRX+1
|
||||||
.ifdef MICROTAN
|
.if .def(MICROTAN) || .def(AIM65)
|
||||||
bne L25A6X
|
bne L25A6X
|
||||||
.else
|
.else
|
||||||
bne L25A6
|
bne L25A6
|
||||||
.endif
|
.endif
|
||||||
L25E5:
|
L25E5:
|
||||||
|
.ifdef AIM65
|
||||||
|
lda INPUTFLG
|
||||||
|
beq L25E5a
|
||||||
|
jsr CRDO
|
||||||
|
jsr CRDO
|
||||||
|
lda #$1a
|
||||||
|
jsr OUTDO
|
||||||
|
jsr $e50a
|
||||||
|
L25E5a:
|
||||||
|
.endif
|
||||||
jmp RESTART
|
jmp RESTART
|
||||||
L25E8:
|
L25E8:
|
||||||
bpl L25CE
|
bpl L25CE
|
||||||
|
@ -5,7 +5,7 @@ if [ ! -d orig ]; then
|
|||||||
exit;
|
exit;
|
||||||
fi
|
fi
|
||||||
|
|
||||||
for i in cbmbasic1 cbmbasic2 kbdbasic osi kb9 applesoft microtan; do
|
for i in cbmbasic1 cbmbasic2 kbdbasic osi kb9 applesoft microtan aim65; do
|
||||||
|
|
||||||
echo $i
|
echo $i
|
||||||
ca65 -D $i msbasic.s -o tmp/$i.o &&
|
ca65 -D $i msbasic.s -o tmp/$i.o &&
|
||||||
|
11
string.s
11
string.s
@ -9,9 +9,13 @@ STR:
|
|||||||
pla
|
pla
|
||||||
pla
|
pla
|
||||||
LD353:
|
LD353:
|
||||||
lda #$FF
|
lda #<(STACK2-1)
|
||||||
ldy #$00
|
ldy #>(STACK2-1)
|
||||||
|
.if STACK2 > $0100
|
||||||
|
bne STRLIT
|
||||||
|
.else
|
||||||
beq STRLIT
|
beq STRLIT
|
||||||
|
.endif
|
||||||
|
|
||||||
; ----------------------------------------------------------------------------
|
; ----------------------------------------------------------------------------
|
||||||
; GET SPACE AND MAKE DESCRIPTOR FOR STRING WHOSE
|
; GET SPACE AND MAKE DESCRIPTOR FOR STRING WHOSE
|
||||||
@ -85,6 +89,9 @@ L32B6:
|
|||||||
.ifdef CONFIG_NO_INPUTBUFFER_ZP
|
.ifdef CONFIG_NO_INPUTBUFFER_ZP
|
||||||
beq LD399
|
beq LD399
|
||||||
cmp #>INPUTBUFFER
|
cmp #>INPUTBUFFER
|
||||||
|
.elseif .def(AIM65)
|
||||||
|
beq LD399
|
||||||
|
cmp #$01
|
||||||
.endif
|
.endif
|
||||||
bne PUTNEW
|
bne PUTNEW
|
||||||
LD399:
|
LD399:
|
||||||
|
2
trig.s
2
trig.s
@ -130,6 +130,7 @@ MICROSOFT:
|
|||||||
.endif
|
.endif
|
||||||
.endif
|
.endif
|
||||||
|
|
||||||
|
.ifndef AIM65
|
||||||
; ----------------------------------------------------------------------------
|
; ----------------------------------------------------------------------------
|
||||||
; "ATN" FUNCTION
|
; "ATN" FUNCTION
|
||||||
; ----------------------------------------------------------------------------
|
; ----------------------------------------------------------------------------
|
||||||
@ -199,3 +200,4 @@ POLY_ATN:
|
|||||||
.if .def(CONFIG_11A) && (!.def(CONFIG_2))
|
.if .def(CONFIG_11A) && (!.def(CONFIG_2))
|
||||||
.byte $00 ; XXX
|
.byte $00 ; XXX
|
||||||
.endif
|
.endif
|
||||||
|
.endif
|
@ -180,6 +180,12 @@ SGNCPR = STRNG1
|
|||||||
FACEXTENSION = STRNG1+1
|
FACEXTENSION = STRNG1+1
|
||||||
STRNG2:
|
STRNG2:
|
||||||
.res 2
|
.res 2
|
||||||
|
.ifdef AIM65
|
||||||
|
ATN:
|
||||||
|
.res 3
|
||||||
|
ZBE:
|
||||||
|
.res 1
|
||||||
|
.endif
|
||||||
CHRGET:
|
CHRGET:
|
||||||
TXTPTR = <(GENERIC_TXTPTR-GENERIC_CHRGET + CHRGET)
|
TXTPTR = <(GENERIC_TXTPTR-GENERIC_CHRGET + CHRGET)
|
||||||
CHRGOT = <(GENERIC_CHRGOT-GENERIC_CHRGET + CHRGET)
|
CHRGOT = <(GENERIC_CHRGOT-GENERIC_CHRGET + CHRGET)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user