1
0
mirror of https://github.com/hsoft/collapseos.git synced 2024-11-26 16:48:05 +11:00

Compare commits

..

No commits in common. "2b7abf802f3765cbee03594e2995231055cfcabd" and "507c2c12e7c6850c04305a2b1d55975cb65041ad" have entirely different histories.

6 changed files with 15 additions and 26 deletions

View File

@ -4,4 +4,3 @@
;
: PC H@ ORG @ - BIN( @ + ;
: A, C, ;
: A,, SPLITB A, A, ;

View File

@ -1,13 +1,12 @@
: OP1 CREATE C, DOES> C@ A, ;
0xac OP1 LODSB, 0xfa OP1 CLI, 0xfb OP1 STI,
0xf4 OP1 HLT, 0xfc OP1 CLD, 0xfd OP1 STD,
( no argument, jumps with relative addrs are special )
( no argument, jumps with abs addrs are special )
0xeb OP1 JMPs, 0xe9 OP1 JMPn, 0x74 OP1 JZ,
: MOVri, SWAP 0xb0 OR A, A, ;
: MOVxi, SWAP 0xb8 OR A, SPLITB A, A, ;
: MOVsx, 0x8e A, SWAP 3 LSHIFT OR 0xc0 OR A, ;
: INT, 0xcd A, A, ;
: JMPr, 0xff A, 7 AND 0xe0 OR A, ;
: JMPf, ( seg off ) 0xea A, SPLITB A, A, SPLITB A, A, ;
: OPrr CREATE C, DOES> C@ A, 3 LSHIFT OR 0xc0 OR A, ;
0x31 OPrr XORxx, 0x08 OPrr ORrr,

View File

@ -2,9 +2,9 @@ H@ ORG ! 0x7c00 BIN( ! ( BIOS loads boot bin at 0x7c00 )
JMPs, L1 FWRs ( start )
ORG @ 0x25 + HERE ! ( bypass BPB )
L1 FSET ( start )
CLI, CLD, AX 0x800 MOVxi, DS AX MOVsx, ES AX MOVsx,
CLI, CLD, AX AX XORxx, DS AX MOVsx, ES AX MOVsx,
SS AX MOVsx, SP 0xffff MOVxi, STI,
AH 2 MOVri, DX 0 MOVxi, CH 0 MOVri, CL 2 MOVri, AL 1 MOVri,
BX 0 MOVxi, 0x13 INT, ( read 2nd sector of boot floppy )
0x800 0 JMPf,
BX 0x8000 MOVxi, 0x13 INT, ( read 2nd sector of boot floppy )
BX JMPr,
ORG @ 0x1fe + HERE ! 0x55 A, 0xaa A,

26
blk/812
View File

@ -1,16 +1,10 @@
( Registers. SP -> PSP DX -> RSP CX -> IP )
H@ ORG !
JMPn, 0 A,, ( 00, main ) JMPn, 0 A,, ( 03, find )
0 A,, ( 06, unused ) 0 A,, ( 08, LATEST )
0 A, ( 0a, unused ) JMPn, 0 A,, ( 0b, cellWord )
JMPn, 0 A,, ( 0e compiledWord ) JMPn, 0 A,, ( 11, pushRS )
JMPn, 0 A,, ( 14, popRS )
JMPn, 0 A,, ( 17, nativeWord )
JMPn, 0 A,, ( 1a, next ) JMPn, 0 A,, ( 1d, chkPS )
0 A, 0 A, ( 20, numberWord ) 0 A, 0 A, ( 22, litWord )
0 A, 0 A, ( 24, addrWord ) 0 A, 0 A, ( 26, unused )
0 A, 0 A,, ( unused )
JMPn, 0 A,, ( 2b, doesWord ) 0 A, 0 A, ( 2e, unused )
0 A, 0 A,, ( unused )
JMPn, 0 A,, ( 33, execute ) 0 A, 0 A, ( unused )
0 A, 0 A,, ( unused )
H@ ORG ! 0x8000 BIN( !
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 )

View File

@ -1,3 +0,0 @@
PC 3 - ORG @ 1+ ! ( main )
AH 0x0e MOVri, ( print char ) AL 'X' MOVri, 0x10 INT,
HLT,

View File

@ -1,4 +1,4 @@
750 LOAD
812 813 LOADR
812 LOAD
ORG @ 256 /MOD 2 PC! 2 PC!
H@ 256 /MOD 2 PC! 2 PC!