honeylisp/neutgs/init.fnl

38 lines
745 B
Fennel

(local Ssc (require :ssc))
(import-macros {:sss ! : compile} :ssc.macros)
(local ssc (Ssc))
(set ssc.prg.start-symbol :boot)
(compile ssc
(require :ssc.iigs.toolbox)
(org 0xc00)
(asm
boot
(clc) (xce) (rep 0x30) ; disable emulation mode, 16-bit index registers
(jsr main)
(sec) (xce) ;re-enter emulation mode
(rts)
pascalhex (db 5) hexbuf (bytes " "))
(fn printnum (num)
(HexIt num (& hexbuf))
(WriteString 0 (& pascalhex)))
(fn add (lhs rhs) (+ lhs rhs))
(fn main ()
(TLStartUp)
(let (userid (MMStartUp))
(IMStartUp)
(TextStartUp)
(printnum (add 1 2))
(TextShutDown)
(IMShutDown)
(MMShutDown userid)
(TLShutDown)))
)
(ssc:assemble)