From de377cf420a7981ff96931e1aba13f33f6004264 Mon Sep 17 00:00:00 2001 From: Willem Date: Sun, 14 Jul 2024 16:43:39 +0200 Subject: [PATCH] Added code for cls.com and start of ver.com --- src/tools/gluedos1/cls.asm | 16 +++++++------- src/tools/gluedos1/ver.asm | 43 ++++++++++++++++++++++++++++++++------ 2 files changed, 46 insertions(+), 13 deletions(-) diff --git a/src/tools/gluedos1/cls.asm b/src/tools/gluedos1/cls.asm index 0c6210b..e6dab2a 100644 --- a/src/tools/gluedos1/cls.asm +++ b/src/tools/gluedos1/cls.asm @@ -1,18 +1,20 @@ +CALLSLT .equ 0x001C +EXPTBL .equ 0xFCC1 +BIOS_CLS .equ 0x00C3 + .area _CODE JP MAIN .db 0x0D .db 0x0D,0x0A - .str "TODO: MSX-DOS1 cls command." + .str "MSX-DOS1 cls command." .db 0x0D,0x0A .db 0x1A -; TODO: code -; -; SUPPORT: cls -; - clear the screen -; - exit MAIN: - RET + XOR A + LD IY,(EXPTBL) + LD IX,#BIOS_CLS + JP CALLSLT .area _DATA diff --git a/src/tools/gluedos1/ver.asm b/src/tools/gluedos1/ver.asm index aee53f2..419583a 100644 --- a/src/tools/gluedos1/ver.asm +++ b/src/tools/gluedos1/ver.asm @@ -1,18 +1,49 @@ +BDOS .equ 0x0005 +_DOSVER .equ 0x6F +_STROUT .equ 0x09 + .area _CODE JP MAIN .db 0x0D .db 0x0D,0x0A - .str "TODO: MSX-DOS1 ver(sion) command." + .str "MSX-DOS1 ver(sion) command." .db 0x0D,0x0A .db 0x1A -; TODO: code -; -; SUPPORT: ver -; - Prints DBOS version -; - exit MAIN: + XOR A + LD DE,#TXT_DOS + LD C,#_STROUT + CALL BDOS + + XOR A + LD C,#_DOSVER + CALL BDOS + + LD A,B; DOS VERSION + CP #1 + LD C,#_STROUT + LD DE,#TXT_DOS1 + JP C,BDOS + + ; TODO: print full version + ; BC = MSX-DOS kernel version as BCD 0234h + ; DE = MSXDOS2.SYS version number + ADD #48 + LD DE,#TXT_VERSION + LD (DE),A + + XOR A + LD C,#_STROUT + CALL BDOS RET +TXT_DOS: + .str "Dos version $" +TXT_DOS1: + .str "1$" +TXT_VERSION: + .str "X.XX$" + .area _DATA