From e8e569fc236ff5fd8c6a44bdb7d0e2e19f1d29e5 Mon Sep 17 00:00:00 2001 From: Anatoliy Belyanskiy Date: Sun, 15 Oct 2023 04:06:17 +1000 Subject: [PATCH] start --- define.txt | 5 + dss.inc | 71 ++++ format.txt | 61 +++ knownbug.txt | 6 + menu.asm | 1053 ++++++++++++++++++++++++++++++++++++++++++++++++++ object.asm | 185 +++++++++ parser.asm | 549 ++++++++++++++++++++++++++ readme.eng | 227 +++++++++++ screen.asm | 397 +++++++++++++++++++ usage.txt | 22 ++ 10 files changed, 2576 insertions(+) create mode 100644 define.txt create mode 100644 dss.inc create mode 100644 format.txt create mode 100644 knownbug.txt create mode 100755 menu.asm create mode 100755 object.asm create mode 100755 parser.asm create mode 100644 readme.eng create mode 100755 screen.asm create mode 100644 usage.txt diff --git a/define.txt b/define.txt new file mode 100644 index 0000000..9abc9cf --- /dev/null +++ b/define.txt @@ -0,0 +1,5 @@ +[MENU] +title=User Menu +item=Flex Navigator, C:\FN\FN.EXE +item=Command prompt +item=Sub menu, C:\menu.exe submenu.mnu diff --git a/dss.inc b/dss.inc new file mode 100644 index 0000000..d7b99d1 --- /dev/null +++ b/dss.inc @@ -0,0 +1,71 @@ + +DSS_VERSION EQU #00 +DSS_CHDISK EQU #01 +DSS_CURDISK EQU #02 +DSS_DSKINFO EQU #03 +DSS_G_ENTRY EQU #04 + +DSS_BOOTDSK EQU #09 +DSS_CREATE EQU #0A +DSS_CREAT_N EQU #0B +DSS_ERASE EQU #0D +DSS_DELETE EQU #0E +DSS_MOVE EQU #0F +DSS_RENAME EQU #10 +DSS_OPEN EQU #11 +DSS_CLOSE EQU #12 +DSS_READ EQU #13 +DSS_WRITE EQU #14 +DSS_MOVE_FP EQU #15 +DSS_ATTRIB EQU #16 +DSS_GET_D_T EQU #17 +DSS_PUT_D_T EQU #18 +DSS_F_FIRST EQU #19 +DSS_F_NEXT EQU #1A +DSS_MKDIR EQU #1B +DSS_RMDIR EQU #1C +DSS_CHDIR EQU #1D +DSS_CURDIR EQU #1E +DSS_SYSTIME EQU #21 +DSS_SETTIME EQU #22 + +DSS_WAITKEY EQU #30 +DSS_SCANKEY EQU #31 +DSS_ECHOKEY EQU #32 +DSS_CTRLKEY EQU #33 +DSS_EDIT EQU #34 +DSS_K_CLEAR EQU #35 + +DSS_SETWIN EQU #38 +DSS_SETWIN1 EQU #39 +DSS_SETWIN2 EQU #3A +DSS_SETWIN3 EQU #3B +DSS_FREEMEM EQU #3C +DSS_GETMEM EQU #3D +DSS_RETMEM EQU #3E +DSS_SETMEM EQU #3F + +DSS_EXEC EQU #40 +DSS_EXIT EQU #41 +DSS_WAIT EQU #42 + +DSS_GSWITCH EQU #43 +DSS_DOSNAME EQU #44 + +DSS_SETVMOD EQU #50 +DSS_GETVMOD EQU #51 +DSS_LOCATE EQU #52 +DSS_CURSOR EQU #53 +DSS_SELPAGE EQU #54 +DSS_SCROLL EQU #55 +DSS_CLEAR EQU #56 +DSS_RDCHAR EQU #57 +DSS_WRCHAR EQU #58 +DSS_WINCOPY EQU #59 +DSS_WINREST EQU #5A +DSS_PUTCHAR EQU #5B +DSS_PCHARS EQU #5C +DSS_RES_PRN EQU #5D +DSS_CTRLPRN EQU #5E +DSS_PRINT EQU #5F + diff --git a/format.txt b/format.txt new file mode 100644 index 0000000..0c36788 --- /dev/null +++ b/format.txt @@ -0,0 +1,61 @@ + +command format: + +MENU.EXE [keys] [menufile] [#section] + +keys: + +-m title=User Menu; item=Flex Navigator, c:\fn\fn.exe; item=Command prompt, c:\system.exe /s +-h help page +-x autoexit from menu when program are terminated +-k keyboard control disable +-u mouse control disable +-o message output disable + +menufile structure: + +[MENU] +# main variables +title= +item=, +item=Item name, { + cd \somedir\ + type somefile.txt + copy somefile.txt \other\other.txt + } +item=Exit, { echo see you soon! ; } +autoexit=<0/1> +menucolour=, +barcolour=, +defaultitem=,