msbasic/msbasic.s

106 lines
1.3 KiB
ArmAsm
Raw Normal View History

2008-10-09 07:24:49 +00:00
; Microsoft BASIC for 6502
2008-10-06 05:21:05 +00:00
2008-10-12 03:33:45 +00:00
.debuginfo +
2008-10-12 19:50:23 +00:00
.if .def(cbmbasic1)
2008-10-12 03:33:45 +00:00
CBM1 := 1
2008-10-12 20:17:43 +00:00
.include "defines_cbm.s"
2008-10-12 19:50:23 +00:00
.elseif .def(osi)
2008-10-12 03:33:45 +00:00
OSI := 1
2008-10-12 20:17:43 +00:00
.include "defines_osi.s"
2008-10-12 19:50:23 +00:00
.elseif .def(applesoft)
2008-10-12 03:33:45 +00:00
APPLE := 1
2008-10-12 20:17:43 +00:00
.include "defines_apple.s"
2008-10-12 19:50:23 +00:00
.elseif .def(kb9)
2008-10-12 03:33:45 +00:00
KIM := 1
2008-10-12 20:17:43 +00:00
.include "defines_kim.s"
2008-10-12 19:50:23 +00:00
.elseif .def(cbmbasic2)
2008-10-12 03:33:45 +00:00
CBM2 := 1
2008-10-12 20:17:43 +00:00
.include "defines_cbm.s"
2008-10-12 19:50:23 +00:00
.elseif .def(kbdbasic)
2008-10-12 03:33:45 +00:00
KBD := 1
2008-10-12 20:17:43 +00:00
.include "defines_kbd.s"
2008-10-12 01:32:09 +00:00
.endif
2008-10-12 19:54:16 +00:00
.ifdef CONFIG_SMALL
BYTES_FP := 4
.else
BYTES_FP := 5
2008-10-12 20:17:43 +00:00
.endif
2008-10-12 19:54:16 +00:00
2008-10-12 20:17:43 +00:00
.ifdef APPLE
BYTES_PER_ELEMENT := 6 ; ???
.else
BYTES_PER_ELEMENT := BYTES_FP
2008-10-12 19:54:16 +00:00
.endif
2008-10-12 20:43:37 +00:00
BYTES_PER_VARIABLE := BYTES_FP+2
2008-10-12 19:54:16 +00:00
MANTISSA_BYTES := BYTES_FP-1
2008-10-12 19:50:23 +00:00
BYTES_PER_FRAME := 2*BYTES_FP+8
FOR_STACK1 := 2*BYTES_FP+5
FOR_STACK2 := BYTES_FP+4
2008-10-12 01:32:09 +00:00
2008-10-12 20:17:43 +00:00
.ifdef CBM1
MAX_EXPON = 12
.else
MAX_EXPON = 10
.endif
2008-10-12 19:50:23 +00:00
.include "macros.s"
.include "zeropage.s"
2008-10-11 23:57:13 +00:00
2008-10-06 05:21:05 +00:00
.setcpu "6502"
2008-10-09 09:18:45 +00:00
.macpack longbranch
2008-10-06 05:21:05 +00:00
STACK := $0100
2008-10-11 17:10:12 +00:00
.segment "HEADER"
2008-10-08 05:07:59 +00:00
.ifdef KBD
jmp LE68C
.byte $00,$13,$56
.endif
2008-10-13 00:44:36 +00:00
.include "token.s"
2008-10-12 19:04:31 +00:00
2008-10-13 00:44:36 +00:00
.include "error.s"
2008-10-11 22:37:02 +00:00
2008-10-13 02:05:35 +00:00
.include "message.s"
2008-10-13 01:12:57 +00:00
2008-10-13 02:14:07 +00:00
.include "memory.s"
2008-10-13 02:05:35 +00:00
.include "program.s"
2008-10-13 02:14:07 +00:00
.include "flow.s"
2008-10-13 02:05:35 +00:00
2008-10-13 02:14:07 +00:00
.include "misc1.s"
2008-10-13 02:05:35 +00:00
2008-10-13 02:14:07 +00:00
.include "print.s"
2008-10-13 02:05:35 +00:00
.include "input.s"
.include "eval.s"
2008-10-13 02:14:07 +00:00
.include "var.s"
2008-10-13 02:05:35 +00:00
2008-10-13 01:43:59 +00:00
.include "array.s"
2008-10-13 02:14:07 +00:00
.include "misc2.s"
2008-10-13 01:43:59 +00:00
.include "string.s"
2008-10-13 02:14:07 +00:00
.include "misc3.s"
2008-10-13 01:43:59 +00:00
2008-10-13 02:14:07 +00:00
.ifndef KBD
.include "poke.s"
2008-10-08 07:04:03 +00:00
.endif
2008-10-12 21:39:54 +00:00
.include "float.s"
2008-10-13 00:27:11 +00:00
.include "chrget.s"
2008-10-12 21:39:54 +00:00
2008-10-13 00:11:02 +00:00
.include "rnd.s"
2008-10-12 21:39:54 +00:00
2008-10-13 00:11:02 +00:00
.include "trig.s"
2008-10-12 21:39:54 +00:00
2008-10-13 00:27:11 +00:00
.include "init.s"