From 66b27b0790be6caf55e3d486d204161caac2f23b Mon Sep 17 00:00:00 2001 From: Virgil Dupras Date: Fri, 12 Jun 2020 19:07:23 -0400 Subject: [PATCH] 8086asm: properly initialize DS and DF --- blk/751 | 1 + blk/753 | 3 +++ blk/811 | 2 +- 3 files changed, 5 insertions(+), 1 deletion(-) diff --git a/blk/751 b/blk/751 index 937007f..26ad59c 100644 --- a/blk/751 +++ b/blk/751 @@ -5,3 +5,4 @@ VARIABLE L1 VARIABLE L2 VARIABLE L3 VARIABLE L4 : AH 4 ; : CH 5 ; : DH 6 ; : BH 7 ; : AX 8 ; : CX 9 ; : DX 10 ; : BX 11 ; : SP 12 ; : BP 13 ; : SI 14 ; : DI 15 ; +: ES 0 ; : CS 1 ; : SS 2 ; : DS 3 ; diff --git a/blk/753 b/blk/753 index 886eaeb..47fa6bf 100644 --- a/blk/753 +++ b/blk/753 @@ -1,7 +1,10 @@ : MOVri, SWAP 0xb0 OR A, A, ; : MOVrI, SWAP 0xb0 OR A, SPLITB A, A, ; +: MOVsx, 0x8e A, SWAP MODRMrr A, ; : INT, 0xcd A, A, ; ( no argument, flow ops are special ) : JMP8, 0xeb A, ; : JMP16, 0xe9 A, ; : JZ, 0x74 A, ; : LODSB, 0xac A, ; : CLI, 0xfa A, ; : HLT, 0xf4 A, ; : ORrr, 0x08 A, MODRMrr A, ; +: XORxx, 0x31 A, MODRMrr A, ; +: CLD, 0xfc A, ; : STD, 0xfd A, ; diff --git a/blk/811 b/blk/811 index 47a9a19..5687427 100644 --- a/blk/811 +++ b/blk/811 @@ -3,7 +3,7 @@ H@ ORG ! 0x7c00 BIN( ! ( BIOS loads boot bin at 0x7c00 ) JMP8, L1 FWR8 ( start ) L2 BSET ( msg ) ," Hello, World!" 0 A, L1 FSET ( start ) -CLI, +CLI, CLD, AX AX XORxx, DS AX MOVsx, AH 0 MOVri, AL 2 MOVri, ( 80x25 BW video mode ) 0x10 INT, SI L2 @ ( msg ) MOVrI, AH 0x0e MOVri, ( print char ) L1 BSET ( loop ) LODSB, AL AL ORrr, ( end of str? )