This commit is contained in:
Michael Steil 2008-10-16 09:28:49 +00:00
parent 1ec5db7171
commit 3306035d62
9 changed files with 23 additions and 16 deletions

View File

@ -3,7 +3,7 @@ Commodore BASIC 1 1977 Y Y CBM
OSI BASIC 1977 1.0 REV 3.2 Y N - OSI BASIC 1977 1.0 REV 3.2 Y N -
AppleSoft I 1977 1.1 N Y Apple CONFIG_11 AppleSoft I 1977 1.1 N Y Apple CONFIG_11
KIM BASIC 1977 1.1 N Y - CONFIG_11A KIM BASIC 1977 1.1 N Y - CONFIG_11A
Commodore BASIC 2 1979 Y Y CBM CONFIG_2 AppleSoft II 1978 Y Y Apple CONFIG_2
AppleSoft II 1978 Y Y Apple Commodore BASIC 2 1979 Y Y CBM CONFIG_2A
KBD BASIC 1980 Y N KBD KBD BASIC 1980 Y N KBD
MicroTAN 1979 Y Y - MicroTAN 1979 Y Y -

View File

@ -14,6 +14,7 @@ CONFIG_CBM_ALL := 1
CONFIG_11 := 1 CONFIG_11 := 1
CONFIG_11A := 1 CONFIG_11A := 1
CONFIG_2 := 1 CONFIG_2 := 1
CONFIG_2A := 1
CBM2_KBD := 1 ; 2 weird instances CBM2_KBD := 1 ; 2 weird instances
CBM2_MICROTAN := 1 CBM2_MICROTAN := 1
CBM2_KIM := 1 CBM2_KIM := 1

View File

@ -1,10 +1,11 @@
.define CONFIG_SCRTCH_ORDER 3 .define CONFIG_SCRTCH_ORDER 3
CONFIG_SMALL := 1 CONFIG_SMALL := 1
CONFIG_2 := 1
CBM2_KBD := 1 ; 2 weird instances CBM2_KBD := 1 ; 2 weird instances
KBD_MICROTAN := 1 KBD_MICROTAN := 1
CONFIG_11 := 1 CONFIG_11 := 1
CONFIG_11A := 1 CONFIG_11A := 1
CONFIG_2 := 1
CONFIG_2A := 1
CONFIG_SAFE_NAMENOTFOUND := 1 CONFIG_SAFE_NAMENOTFOUND := 1
; INPUTBUFFER > $0100 ; INPUTBUFFER > $0100
CONFIG_NO_POKE := 1 CONFIG_NO_POKE := 1

View File

@ -8,6 +8,7 @@ CONFIG_MONCOUT_DESTROYS_Y := 1
APPLE_MICROTAN := 1 APPLE_MICROTAN := 1
CONFIG_2 := 1 CONFIG_2 := 1
CONFIG_2A := 1
CONFIG_NULL := 1 CONFIG_NULL := 1
CONFIG_PRINT_CR := 1 ; print CR when line end reached CONFIG_PRINT_CR := 1 ; print CR when line end reached

3
eval.s
View File

@ -242,6 +242,7 @@ FRM_STACK2:
sta INDEX sta INDEX
.ifndef KBD_MICROTAN .ifndef KBD_MICROTAN
inc INDEX ; bug: assumes not on page boundary inc INDEX ; bug: assumes not on page boundary
; bug exists on AppleSoft II
.endif .endif
pla pla
sta INDEX+1 sta INDEX+1
@ -473,7 +474,7 @@ LCE3B:
jmp LD353 jmp LD353
LCE53: LCE53:
.endif .endif
.ifdef KBD_MICROTAN ; also AppleSoft 2 .ifdef KBD_MICROTAN ; also AppleSoft II
; bugfix? ; bugfix?
ldx #$00 ldx #$00
stx STRNG1+1 stx STRNG1+1

View File

@ -170,7 +170,8 @@ L36C7:
sty FACEXTENSION sty FACEXTENSION
adc #$08 adc #$08
.ifdef KBD_MICROTAN .ifdef KBD_MICROTAN
; bugfix? does not exist on AppleSoft 2 ; bugfix?
; fix does not exist on AppleSoft 2
cmp #(MANTISSA_BYTES+1)*8 cmp #(MANTISSA_BYTES+1)*8
.else .else
cmp #MANTISSA_BYTES*8 cmp #MANTISSA_BYTES*8

4
flow.s
View File

@ -276,7 +276,7 @@ END2:
ldy TXTPTR+1 ldy TXTPTR+1
.if (INPUTBUFFER >=$0100) && .def(CONFIG_2) .if (INPUTBUFFER >=$0100) && .def(CONFIG_2)
; BUG on AppleSoft I ; BUG on AppleSoft I
; exists on AppleSoft II ; fix exists on AppleSoft II
; TXTPTR+1 will always be > 0 ; TXTPTR+1 will always be > 0
ldx CURLIN+1 ldx CURLIN+1
inx inx
@ -459,7 +459,7 @@ POP:
bne L281E bne L281E
lda #$FF lda #$FF
.ifdef CONFIG_2 .ifdef CONFIG_2
sta FORPNT+1 ; bugfix, wrong in AppleSoft sta FORPNT+1 ; bugfix, wrong in AppleSoft II
.else .else
sta FORPNT sta FORPNT
.endif .endif

View File

@ -205,14 +205,14 @@ L23AD:
.endif .endif
; ---------------------------------------------------------------------------- ; ----------------------------------------------------------------------------
PUT_NEW_LINE: PUT_NEW_LINE:
.ifdef CBM2_MICROTAN .ifndef KBD
.ifdef CONFIG_2
jsr SETPTRS jsr SETPTRS
jsr LE33D jsr LE33D
lda INPUTBUFFER lda INPUTBUFFER
beq L2351 beq L2351
clc clc
.else .else
.ifndef KBD
lda INPUTBUFFER lda INPUTBUFFER
beq FIX_LINKS beq FIX_LINKS
lda MEMSIZ lda MEMSIZ
@ -333,11 +333,9 @@ LE39A:
lda VARTAB+1,x lda VARTAB+1,x
adc $051C,y adc $051C,y
sta VARTAB+1,y sta VARTAB+1,y
RET3:
rts
.endif .endif
.ifdef CBM2_MICROTAN .ifdef CONFIG_2
RET3: RET3:
rts rts
.endif .endif
@ -527,7 +525,7 @@ L2498:
jsr GET_UPPER jsr GET_UPPER
.else .else
lda INPUTBUFFERX,x lda INPUTBUFFERX,x
.ifndef CBM2_MICROTAN .ifndef CONFIG_2
cmp #$20 cmp #$20
beq L2497 beq L2497
.endif .endif

8
trig.s
View File

@ -115,12 +115,16 @@ POLY_SIN:
.byte $07,$FB,$F8,$87,$99,$68,$89,$01 .byte $07,$FB,$F8,$87,$99,$68,$89,$01
.byte $87,$23,$35,$DF,$E1,$86,$A5,$5D .byte $87,$23,$35,$DF,$E1,$86,$A5,$5D
.byte $E7,$28,$83,$49,$0F,$DA,$A2 .byte $E7,$28,$83,$49,$0F,$DA,$A2
.ifdef CBM2_MICROTAN .ifdef CBM1
; no easter egg text on CBM1
.elseif .def(CONFIG_2A)
; PET encoded easter egg text since CBM2
MICROSOFT: MICROSOFT:
.byte $A1,$54,$46,$8F,$13,$8F,$52,$43 .byte $A1,$54,$46,$8F,$13,$8F,$52,$43
.byte $89,$CD .byte $89,$CD
.elseif .def(CONFIG_CBM_ALL)
.else .else
; ASCII encoded easter egg in between
; also AppleSoft II
MICROSOFT: MICROSOFT:
.byte $A6,$D3,$C1,$C8,$D4,$C8,$D5,$C4 .byte $A6,$D3,$C1,$C8,$D4,$C8,$D5,$C4
.byte $CE,$CA .byte $CE,$CA