The /tests/pc folder is now /tests/pcx86 (to be consistent with the associated emulator)
This commit is contained in:
parent
51b50382fb
commit
663343a1ad
68 changed files with 24 additions and 16 deletions
141
tests/pcx86/inc/dos.inc
Normal file
141
tests/pcx86/inc/dos.inc
Normal file
|
|
@ -0,0 +1,141 @@
|
|||
INT_DOSEXIT EQU 20H
|
||||
INT_DOS EQU 21H
|
||||
DOS_ABORT EQU 00H
|
||||
DOS_STD_CON_INPUT EQU 01H
|
||||
DOS_STD_CON_OUTPUT EQU 02H
|
||||
DOS_STD_AUX_INPUT EQU 03H
|
||||
DOS_STD_AUX_OUTPUT EQU 04H
|
||||
DOS_STD_PRINTER_OUTPUT EQU 05H
|
||||
DOS_RAW_CON_IO EQU 06H
|
||||
DOS_RAW_CON_INPUT EQU 07H
|
||||
DOS_STD_CON_INPUT_NO_ECHO EQU 08H
|
||||
DOS_STD_CON_STRING_OUTPUT EQU 09H
|
||||
DOS_STD_CON_STRING_INPUT EQU 0AH
|
||||
DOS_STD_CON_INPUT_STATUS EQU 0BH
|
||||
DOS_STD_CON_INPUT_FLUSH EQU 0CH
|
||||
DOS_DISK_RESET EQU 0DH
|
||||
DOS_SET_DEFAULT_DRIVE EQU 0EH
|
||||
DOS_FCB_OPEN EQU 0FH
|
||||
DOS_FCB_CLOSE EQU 10H
|
||||
DOS_DIR_SEARCH_FIRST EQU 11H
|
||||
DOS_DIR_SEARCH_NEXT EQU 12H
|
||||
DOS_FCB_DELETE EQU 13H
|
||||
DOS_FCB_SEQ_READ EQU 14H
|
||||
DOS_FCB_SEQ_WRITE EQU 15H
|
||||
DOS_FCB_CREATE EQU 16H
|
||||
DOS_FCB_RENAME EQU 17H
|
||||
DOS_RESERVED18 EQU 18H
|
||||
DOS_GET_DEFAULT_DRIVE EQU 19H
|
||||
DOS_SET_DMA EQU 1AH
|
||||
DOS_RESERVED1B EQU 1BH
|
||||
DOS_RESERVED1C EQU 1CH
|
||||
DOS_RESERVED1D EQU 1DH
|
||||
DOS_RESERVED1E EQU 1EH
|
||||
DOS_GET_DEFAULT_DPB EQU 1FH
|
||||
DOS_RESERVED20 EQU 20H
|
||||
DOS_FCB_RANDOM_READ EQU 21H
|
||||
DOS_FCB_RANDOM_WRITE EQU 22H
|
||||
DOS_GET_FCB_FILE_LENGTH EQU 23H
|
||||
DOS_GET_FCB_POSITION EQU 24H
|
||||
DOS_SET_INTERRUPT_VECTOR EQU 25H
|
||||
DOS_CREATE_PDB EQU 26H
|
||||
DOS_FCB_RANDOM_READ_BLOCK EQU 27H
|
||||
DOS_FCB_RANDOM_WRITE_BLOCK EQU 28H
|
||||
DOS_PARSE_FILE_DESCRIPTOR EQU 29H
|
||||
DOS_GET_DATE EQU 2AH
|
||||
DOS_SET_DATE EQU 2BH
|
||||
DOS_GET_TIME EQU 2CH
|
||||
DOS_SET_TIME EQU 2DH
|
||||
DOS_SET_VERIFY_ON_WRITE EQU 2EH
|
||||
DOS_GET_DMA EQU 2FH
|
||||
DOS_GET_VERSION EQU 30H
|
||||
DOS_KEEP_PROCESS EQU 31H
|
||||
DOS_GET_DPB EQU 32H
|
||||
DOS_SET_CTRL_C_TRAPPING EQU 33H
|
||||
DOS_GET_INDOS_FLAG EQU 34H
|
||||
DOS_GET_INTERRUPT_VECTOR EQU 35H
|
||||
DOS_GET_DRIVE_FREESPACE EQU 36H
|
||||
DOS_CHAR_OPER EQU 37H
|
||||
DOS_INTERNATIONAL_SUPPORT EQU 38H
|
||||
DOS_MKDIR EQU 39H
|
||||
DOS_RMDIR EQU 3AH
|
||||
DOS_CHDIR EQU 3BH
|
||||
DOS_CREAT EQU 3CH
|
||||
DOS_OPEN EQU 3DH
|
||||
DOS_CLOSE EQU 3EH
|
||||
DOS_READ EQU 3FH
|
||||
DOS_WRITE EQU 40H
|
||||
DOS_UNLINK EQU 41H
|
||||
DOS_LSEEK EQU 42H
|
||||
DOS_CHMOD EQU 43H
|
||||
DOS_IOCTL EQU 44H
|
||||
DOS_XDUP EQU 45H
|
||||
DOS_XDUP2 EQU 46H
|
||||
DOS_GETDIR EQU 47H
|
||||
DOS_ALLOC EQU 48H
|
||||
DOS_DEALLOC EQU 49H
|
||||
DOS_SETBLOCK EQU 4AH
|
||||
DOS_EXEC EQU 4BH
|
||||
DOS_EXIT EQU 4CH
|
||||
DOS_WAIT EQU 4DH
|
||||
DOS_FIND_FIRST EQU 4EH
|
||||
DOS_FIND_NEXT EQU 4FH
|
||||
DOS_SET_CURRENT_PDB EQU 50H
|
||||
DOS_GET_CURRENT_PDB EQU 51H
|
||||
DOS_GET_SYSINIT_VARS EQU 52H
|
||||
DOS_SET_DPB EQU 53H
|
||||
DOS_GET_VERIFY_ON_WRITE EQU 54H
|
||||
DOS_DUP_PDB EQU 55H
|
||||
DOS_RENAME EQU 56H
|
||||
DOS_FILE_TIMES EQU 57H
|
||||
DOS_RESERVED58 EQU 58H
|
||||
DOS_GET_EXTENDED_ERROR EQU 59H
|
||||
DOS_CREATE_TEMP_FILE EQU 5AH
|
||||
DOS_CREATE_NEW_FILE EQU 5BH
|
||||
DOS_LOCK_OPER EQU 5CH
|
||||
DOS_SERVER_CALL EQU 5DH
|
||||
DOS_USER_OPER EQU 5EH
|
||||
DOS_ASSIGN_OPER EQU 5FH
|
||||
DOS_XNAMETRANS EQU 60H
|
||||
DOS_JSA EQU 61H
|
||||
DOS_GET_CURRENT_PSP EQU 62H
|
||||
DOS_HONGEUL EQU 63H
|
||||
DOS_SYSINITSLEAZE EQU 64H
|
||||
DOSERR_NONE EQU 00H
|
||||
DOSERR_BADFUNCTION EQU 01H
|
||||
DOSERR_NOFILE EQU 02H
|
||||
DOSERR_NOPATH EQU 03H
|
||||
DOSERR_NOHANDLES EQU 04H
|
||||
DOSERR_NOACCESS EQU 05H
|
||||
DOSERR_BADHANDLE EQU 06H
|
||||
DOSERR_BADARENA EQU 07H
|
||||
DOSERR_NOMEMORY EQU 08H
|
||||
DOSERR_BADADDRESS EQU 09H
|
||||
DOSERR_BADENVIRONMENT EQU 0AH
|
||||
DOSERR_BADFORMAT EQU 0BH
|
||||
DOSERR_BADACCESS EQU 0CH
|
||||
DOSERR_BADDATA EQU 0DH
|
||||
DOSERR_BADUNIT EQU 0EH
|
||||
DOSERR_BADDISK EQU 0FH
|
||||
DOSERR_DELETECURDIR EQU 10H
|
||||
DOSERR_NOTSAMEDEVICE EQU 11H
|
||||
DOSERR_NOMOREFILES EQU 12H
|
||||
DOSERR_WRITEPROTECT EQU 13H
|
||||
DOSERR_UNKNOWNUNIT EQU 14H
|
||||
DOSERR_DRIVENOTREADY EQU 15H
|
||||
DOSERR_BADCOMMAND EQU 16H
|
||||
DOSERR_DATA EQU 17H
|
||||
DOSERR_BADREQUEST EQU 18H
|
||||
DOSERR_SEEK EQU 19H
|
||||
DOSERR_UNKNOWNMEDIA EQU 1AH
|
||||
DOSERR_BADSECTOR EQU 1BH
|
||||
DOSERR_NOPAPER EQU 1CH
|
||||
DOSERR_WRITEFAULT EQU 1DH
|
||||
DOSERR_READFAULT EQU 1EH
|
||||
DOSERR_GENERALFAILURE EQU 1FH
|
||||
DOSERR_NOTSHARED EQU 20H
|
||||
DOSERR_LOCKED EQU 21H
|
||||
DOSERR_DISKCHANGE EQU 22H
|
||||
SEEK_SET EQU 00H
|
||||
SEEK_CUR EQU 01H
|
||||
SEEK_END EQU 02H
|
||||
17
tests/pcx86/inc/misc.inc
Normal file
17
tests/pcx86/inc/misc.inc
Normal file
|
|
@ -0,0 +1,17 @@
|
|||
CR equ 0x0d
|
||||
LF equ 0x0a
|
||||
|
||||
;
|
||||
; The "set" macro initializes a register to the specified value (eg, "set eax,0")
|
||||
;
|
||||
%macro set 2
|
||||
%ifnum %2
|
||||
%if %2 = 0
|
||||
xor %1,%1
|
||||
%else
|
||||
mov %1,%2
|
||||
%endif
|
||||
%else
|
||||
mov %1,%2
|
||||
%endif
|
||||
%endmacro
|
||||
39
tests/pcx86/inc/x86.inc
Normal file
39
tests/pcx86/inc/x86.inc
Normal file
|
|
@ -0,0 +1,39 @@
|
|||
;
|
||||
; X86.DESC defines (see x86.js)
|
||||
;
|
||||
PS_CF equ 0x0001
|
||||
PS_PF equ 0x0004
|
||||
PS_AF equ 0x0010
|
||||
PS_ZF equ 0x0040
|
||||
PS_SF equ 0x0080
|
||||
PS_TF equ 0x0100
|
||||
PS_IF equ 0x0200
|
||||
PS_DF equ 0x0400
|
||||
PS_OF equ 0x0800
|
||||
PS_ARITH equ (PS_CF | PS_PF | PS_AF | PS_ZF | PS_SF | PS_OF)
|
||||
PS_LOGIC equ (PS_CF | PS_PF | PS_ZF | PS_SF | PS_OF)
|
||||
PS_MULTIPLY equ (PS_CF | PS_OF) ; only CF and OF are "defined" following MUL or IMUL
|
||||
PS_DIVIDE equ 0 ; none of the Processor Status flags are "defined" following DIV or IDIV
|
||||
|
||||
CR0_MSW_PE equ 0x0001
|
||||
CR0_PG equ 0x80000000 ; set if paging enabled
|
||||
|
||||
ACC_TYPE_GATE386_INT equ 0x0E00
|
||||
ACC_TYPE_SEG equ 0x1000
|
||||
ACC_PRESENT equ 0x8000
|
||||
ACC_TYPE_CODE equ 0x0800
|
||||
ACC_TYPE_READABLE equ 0x0200
|
||||
ACC_TYPE_WRITABLE equ 0x0200
|
||||
ACC_TYPE_CODE_READABLE equ 0x1a00
|
||||
ACC_TYPE_DATA_WRITABLE equ 0x1200
|
||||
|
||||
|
||||
EXT_NONE equ 0x0000
|
||||
EXT_BIG equ 0x0040
|
||||
|
||||
PTE_FRAME equ 0xfffff000
|
||||
PTE_DIRTY equ 0x00000040 ; page has been modified
|
||||
PTE_ACCESSED equ 0x00000020 ; page has been accessed
|
||||
PTE_USER equ 0x00000004 ; set for user level (CPL 3), clear for supervisor level (CPL 0-2)
|
||||
PTE_READWRITE equ 0x00000002 ; set for read/write, clear for read-only (affects CPL 3 only)
|
||||
PTE_PRESENT equ 0x00000001 ; set for present page, clear for not-present page
|
||||
Loading…
Reference in a new issue