mirror of
https://github.com/mist64/msbasic.git
synced 2025-02-13 10:32:11 +00:00
add some text to msbasic.s
This commit is contained in:
parent
d2cfe9ffc7
commit
2b91b483df
@ -1,9 +0,0 @@
|
|||||||
Name Release MS Version ROM 9digit INPUTBUFFER extensions comment
|
|
||||||
Commodore BASIC 1 1977 Y Y ZP CBM
|
|
||||||
OSI BASIC 1977 1.0 REV 3.2 Y N ZP - CONFIG_10A
|
|
||||||
AppleSoft I 1977 1.1 N Y $0200 Apple CONFIG_11
|
|
||||||
KIM BASIC 1977 1.1 N Y ZP - CONFIG_11A
|
|
||||||
AppleSoft II 1978 Y Y $0200 Apple CONFIG_2
|
|
||||||
Commodore BASIC 2 1979 Y Y $0200 CBM CONFIG_2A
|
|
||||||
KBD BASIC 1980 Y N $0700 KBD CONFIG_2B
|
|
||||||
MicroTAN 1979 Y Y ZP - CONFIG_2C
|
|
7
TODO.txt
7
TODO.txt
@ -5,11 +5,6 @@
|
|||||||
* add AppleSoft comments
|
* add AppleSoft comments
|
||||||
* look for all " $", i.e. (zeropage) constants, replace them
|
* look for all " $", i.e. (zeropage) constants, replace them
|
||||||
with symbols
|
with symbols
|
||||||
* check all .ifdef OSI; they might be .ifdef CONFIG_SMALL
|
* convert platform ifdefs in generic files into feature ifdefs or macros
|
||||||
* check for KBD whether it's CONFIG_2 && CONFIG_SMALL (float
|
|
||||||
etc.)
|
|
||||||
* there must be no platform ifdefs in generic files
|
|
||||||
* reconstruct pre-CBM1, i.e. CBM1 without the patches
|
* reconstruct pre-CBM1, i.e. CBM1 without the patches
|
||||||
* add some comments to every file
|
* add some comments to every file
|
||||||
* clean up all CONFIG_*, maybe some should go away
|
|
||||||
* look for all || and && and convert them into CONFIG_*
|
|
@ -1,26 +1,3 @@
|
|||||||
;CONFIG_CBM1_PATCHES := 1 ; ** don't turn off! **
|
|
||||||
;CONFIG_CBM_ALL := 1
|
|
||||||
;CONFIG_DATAFLG := 1
|
|
||||||
;CONFIG_EASTER_EGG := 1
|
|
||||||
;CONFIG_FILE := 1; support PRINT#, INPUT#, GET#, CMD
|
|
||||||
;CONFIG_IO_MSB := 1 ; all I/O has bit #7 set
|
|
||||||
;CONFIG_MONCOUT_DESTROYS_Y := 1
|
|
||||||
;CONFIG_NO_CR := 1; terminal doesn't need explicit CRs on line ends
|
|
||||||
;CONFIG_NO_LINE_EDITING := 1; support for "@", "_", BEL etc.
|
|
||||||
;CONFIG_NO_POKE := 1
|
|
||||||
;CONFIG_NO_READ_Y_IS_ZERO_HACK := 1
|
|
||||||
;CONFIG_NULL := 1
|
|
||||||
;CONFIG_PEEK_SAVE_LINNUM := 1
|
|
||||||
;CONFIG_PRINTNULLS := 1; whether PRINTNULLS does anything
|
|
||||||
;CONFIG_PRINT_CR := 1 ; print CR when line end reached
|
|
||||||
;CONFIG_RAM := 1
|
|
||||||
;CONFIG_ROR_WORKAROUND := 1; doesn't work with CONFIG_SMALL!
|
|
||||||
;CONFIG_SAFE_NAMENOTFOUND := 1
|
|
||||||
;CONFIG_SCRTCH_ORDER := 1
|
|
||||||
;CONFIG_SCRTCH_ORDER := 2
|
|
||||||
;CONFIG_SCRTCH_ORDER := 3
|
|
||||||
;CONFIG_SMALL := 1
|
|
||||||
|
|
||||||
; configuration
|
; configuration
|
||||||
; oldest known version, no CONFIG_n
|
; oldest known version, no CONFIG_n
|
||||||
|
|
||||||
|
2
init.s
2
init.s
@ -379,7 +379,7 @@ QT_WRITTEN_BY:
|
|||||||
asc80 "COPYRIGHT 1977 BY MICROSOFT CO"
|
asc80 "COPYRIGHT 1977 BY MICROSOFT CO"
|
||||||
.byte CR,0
|
.byte CR,0
|
||||||
.else
|
.else
|
||||||
.byte CR,LF,$0C
|
.byte CR,LF,$0C ; FORM FEED
|
||||||
.ifndef CONFIG_11
|
.ifndef CONFIG_11
|
||||||
.byte "WRITTEN BY RICHARD W. WEILAND."
|
.byte "WRITTEN BY RICHARD W. WEILAND."
|
||||||
.else
|
.else
|
||||||
|
50
msbasic.s
50
msbasic.s
@ -1,4 +1,54 @@
|
|||||||
; Microsoft BASIC for 6502
|
; Microsoft BASIC for 6502
|
||||||
|
;
|
||||||
|
; This is a single integrated assembly source tree that can generate any of seven different
|
||||||
|
; versions of Microsoft BASIC for 6502.
|
||||||
|
;
|
||||||
|
; By running ./make.sh, this will generate all versions and compare them to the original
|
||||||
|
; files byte by byte.
|
||||||
|
;
|
||||||
|
; The CC65 compiler suite is need to build this project.
|
||||||
|
;
|
||||||
|
; These are the first eight (knows) versions of Microsoft BASIC for 6502:
|
||||||
|
;
|
||||||
|
; Name Release MS Version ROM 9digit INPUTBUFFER extensions comment
|
||||||
|
;---------------------------------------------------------------------------------------------------
|
||||||
|
; Commodore BASIC 1 1977 Y Y ZP CBM
|
||||||
|
; OSI BASIC 1977 1.0 REV 3.2 Y N ZP - CONFIG_10A
|
||||||
|
; AppleSoft I 1977 1.1 N Y $0200 Apple CONFIG_11
|
||||||
|
; KIM BASIC 1977 1.1 N Y ZP - CONFIG_11A
|
||||||
|
; AppleSoft II 1978 Y Y $0200 Apple CONFIG_2
|
||||||
|
; Commodore BASIC 2 1979 Y Y $0200 CBM CONFIG_2A
|
||||||
|
; KBD BASIC 1980 Y N $0700 KBD CONFIG_2B
|
||||||
|
; MicroTAN 1980 Y Y ZP - CONFIG_2C
|
||||||
|
;
|
||||||
|
; (Note that this assembly source cannot (yet) build AppleSoft II.)
|
||||||
|
;
|
||||||
|
; This lists the versions in the order in which they were forked from the Microsoft source base.
|
||||||
|
; Commodore BASIC 1, as used on the original PET is the oldest known version of Microsoft BASIC
|
||||||
|
; for 6502. It contains some additions to Microsoft's version, like Commodore-style file I/O.
|
||||||
|
;
|
||||||
|
; The CONFIG_n defines specify what Microsoft-version the OEM version is based on.
|
||||||
|
|
||||||
|
; CONFIG_CBM1_PATCHES jump out into CBM1's binary patches instead of doing the right thing inline
|
||||||
|
; CONFIG_CBM_ALL add all Commodore-specific additions except file I/O
|
||||||
|
; CONFIG_DATAFLG ?
|
||||||
|
; CONFIG_EASTER_EGG include the CBM2 "MICROSOFT!" easter egg
|
||||||
|
; CONFIG_FILE support Commodore PRINT#, INPUT#, GET#, CMD
|
||||||
|
; CONFIG_IO_MSB all I/O has bit #7 set
|
||||||
|
; CONFIG_MONCOUT_DESTROYS_Y Y needs to be preserved when calling MONCOUT
|
||||||
|
; CONFIG_NO_CR terminal doesn't need explicit CRs on line ends
|
||||||
|
; CONFIG_NO_LINE_EDITING disable support for Microsoft-style "@", "_", BEL etc.
|
||||||
|
; CONFIG_NO_POKE don't support PEEK, POKE and WAIT
|
||||||
|
; CONFIG_NO_READ_Y_IS_ZERO_HACK don't do a ver volatile trick that saves one byte
|
||||||
|
; CONFIG_NULL support for the NULL statement
|
||||||
|
; CONFIG_PEEK_SAVE_LINNUM preserve LINNUM on a PEEK
|
||||||
|
; CONFIG_PRINTNULLS whether PRINTNULLS does anything
|
||||||
|
; CONFIG_PRINT_CR print CR when line end reached
|
||||||
|
; CONFIG_RAM optimizations for RAM version of BASIC, only use on 1.x
|
||||||
|
; CONFIG_ROR_WORKAROUND use workaround for buggy 6502s from 1975/1976; doesn't work with CONFIG_SMALL!
|
||||||
|
; CONFIG_SAFE_NAMENOTFOUND check both bytes of the caller's address in NAMENOTFOUND
|
||||||
|
; CONFIG_SCRTCH_ORDER where in the init code to call SCRTCH
|
||||||
|
; CONFIG_SMALL use 6 digit FP instead of 9 digit, use 2 character error messages, don't have GET
|
||||||
|
|
||||||
.debuginfo +
|
.debuginfo +
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user