1a467efae1
Unless I misunderstood, this is supposed to set CS. This would make all SREG have the same value. This allows us to remove BIN( offset from os.bin. I've tried booting to offset 0, but it didn't seem to work. Let's settle for 0x8000. 512kb of system RAM is way more than we need anyways.
11 lines
372 B
Plaintext
11 lines
372 B
Plaintext
H@ ORG !
|
|
JMPs, L1 FWRs ( start )
|
|
L2 ( msg ) BSET ," Hello World!" 0 A,
|
|
L1 FSET ( start )
|
|
SI L2 @ ( msg ) MOVxi, AH 0x0e MOVri, ( print char )
|
|
L1 BSET ( loop ) LODSB, AL AL ORrr, ( end of str? )
|
|
JZ, L2 FWRs ( next ) 0x10 INT, ( print char )
|
|
JMPs, L1 ( loop ) BWR
|
|
L2 FSET ( next ) AH 0 MOVri, 0x16 INT, ( read kbd )
|
|
AH 0x0e MOVri, 0x10 INT, ( spit read char ) HLT, ( done )
|