upgrade esxdos to 0.8.9

This commit is contained in:
antoniovillena 2021-05-04 10:11:49 +02:00
parent 331572601b
commit bef7bd98d6
32 changed files with 327 additions and 8 deletions

BIN
SD.zip

Binary file not shown.

Binary file not shown.

BIN
SD/BIN/CAL Normal file

Binary file not shown.

BIN
SD/BIN/DATE Normal file

Binary file not shown.

BIN
SD/BIN/DFWLOAD Normal file

Binary file not shown.

BIN
SD/BIN/GSC Normal file

Binary file not shown.

Binary file not shown.

BIN
SD/BIN/SCL2TRD Normal file

Binary file not shown.

BIN
SD/BIN/SERCP Normal file

Binary file not shown.

BIN
SD/BIN/STRINGS Normal file

Binary file not shown.

BIN
SD/BIN/TAR Normal file

Binary file not shown.

BIN
SD/BIN/TE Normal file

Binary file not shown.

BIN
SD/BIN/TSPLAY Normal file

Binary file not shown.

Binary file not shown.

BIN
SD/SYS/AUTOBOOT.BAS Normal file

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -1,10 +1,22 @@
# esxDOS config file
# AutoBoot mode (loads /SYS/AUTOBOOT.BAS)
#esxDOS cfg
#AutoBoot
#0=Disabled
#1=Load only on Cold boot
#2=Load only on Warm boot
# 3=Load always (Cold and Warm boot)
#3=Load always
AutoBoot=0
#AutoLoad Colour
AutoLoadColour=7
#Z80DMA
#0=Disabled
#1=Enabled
DMA=0
#Timings (2-4)
DMA_IO=4
DMA_RAM=4
#TAP Parity
ParityCheck=0

BIN
SD/SYS/CUSTOM Normal file

Binary file not shown.

57
SD/SYS/CUSTOM.ASM Normal file
View File

@ -0,0 +1,57 @@
;==============================================================================
; Project: custom.zdsp
; Main File: custom.asm
; Date: 27/10/2017 12:00:00
;
; Created with zDevStudio - Z80 Development Studio.
;
; pasmo --err --bin custom.asm custom
;
;==============================================================================
include nmi.inc
include nmi.publics
org ovrBuf
; --------------
; custom overlay
; --------------
;
custom ld bc, 24*256+0
ld a, COL_MID
call clrScr
ld bc, 3*256+11
ld a, BRIGHT+MAGENTA*8+WHITE
call clrScr
ld hl, msg0001
call prStr
call waitKey
;
; return values
;
; 1 - reload dir and reprint all
; 2 - reprint all (top, mid, bottom and cursor)
; 3 - reprint mid, bottom and cursor
; 4 - reprint bottom and cursor
; 5 - reprint nothing
;
ld a, 2
ret
; --------
; messages
; --------
;
msg0001 db $16,12,64/2-12/2,'Hello world!', 0
;------------------------------------------------------------------------------
IF $ > ovrBuf+SIZ_OVR
.ERROR Resulting code too long
ENDIF
;------------------------------------------------------------------------------

34
SD/SYS/CUSTOM.ZDSP Normal file
View File

@ -0,0 +1,34 @@
[Project]
Name=custom.zdsp
Path=\\nas\SPECTRUM\!RETRO\zDevStudio\NMI\v13\custom\
ObjExt=.
[File]
Total=3
0=custom.asm
1=NMI.inc
2=nmi.publics
[Directory]
Total=1
0=\\nas\SPECTRUM\!RETRO\zDevStudio\NMI\v13\custom\
[Options]
Total=10
0=OBJFORMAT:0
1=COMMONSEG:0
2=AUTOLOCAL:0
3=BRACKET:0
4=DEBUG1:0
5=DEBUG2:0
6=CASEINS:0
7=PUBSYMBOLS:0
8=USERCOMMAND:
9=TOTALSYMBOL:0
[External]
Total=0
[FileInUse]
Total=1
0=\\nas\SPECTRUM\!RETRO\zDevStudio\NMI\v13\custom\custom.asm

Binary file not shown.

65
SD/SYS/NMI.INC Normal file
View File

@ -0,0 +1,65 @@
;==============================================================================
; Project: NMI.zdsp
; File: NMI.inc
; Date: 29/07/2017 10:58:43
;
; Created with zDevStudio - Z80 Development Studio.
;
;==============================================================================
;==============================================================================
; DEFINITIONS
;==============================================================================
M_VERSION MACRO
db 'v0.0.13'
ENDM
; -----------------------------------------------------------------------------
; Colors and attributes
; -----------------------------------------------------------------------------
BLACK equ 0
BLUE equ 1
RED equ 2
MAGENTA equ 3
GREEN equ 4
CYAN equ 5
YELLOW equ 6
WHITE equ 7
BRIGHT equ $40
FLASH equ $80
; -----------------------------------------------------------------------------
; Key table
; -----------------------------------------------------------------------------
K_EDIT equ $07
K_LEFT equ $08
K_RIGHT equ $09
K_DOWN equ $0a
K_UP equ $0b
K_DELETE equ $0c
K_ENTER equ $0d
K_AT equ $ac ; SS+I
K_TO equ $cc ; SS+F
; no mapping on speccy BASIC
K_BREAK equ $1c
K_SS_ENTER equ $1d
; -----------------------------------------------------------------------------
; Colors used in GUI
; -----------------------------------------------------------------------------
COL_MID equ BLACK*8+WHITE ; black paper, white ink
COL_TOP equ WHITE*8+BLACK ; white paper, black ink
COL_BOT equ WHITE*8+BLACK ; white paper, black ink
COL_CUR equ BRIGHT+BLUE*8+WHITE ; blue paper, bright white ink
COL_ERR equ BRIGHT+RED*8+WHITE ; red paper, bright white ink
; -----------------------------------------------------------------------------
; Overlay system
; -----------------------------------------------------------------------------
SIZ_OVR equ 768 ; size of overlay buffer

16
SD/SYS/NMI.PUBLICS Normal file
View File

@ -0,0 +1,16 @@
NMIbuf EQU 037ADH
savedSP EQU 03575H
divRAM EQU 0390AH
esxDOSv EQU 0390CH
flg128k EQU 03909H
bDAttr EQU 03917H
bDName EQU 03918H
ovrBuf EQU 03A00H
waitKey EQU 03290H
readKey EQU 032BCH
clrScr EQU 0335DH
utoa EQU 033A5H
prStr EQU 033F9H
prChr EQU 0340CH
prtDec EQU 033E5H

Binary file not shown.

Binary file not shown.

135
SD/SYS/README.TXT Normal file
View File

@ -0,0 +1,135 @@
; =============================================================================
; FUNCTIONS
; =============================================================================
; -----------------------------------------------------------------------------
; waitKey wait for key or mouse
;
; input: -
; output: a = key pressed
; destroys: af,bc,de,hl
; -----------------------------------------------------------------------------
; -----------------------------------------------------------------------------
; readKey read key
;
; input: -
; output: a = key pressed, 0 if none
; destroys: af,bc,de,hl
; -----------------------------------------------------------------------------
; -----------------------------------------------------------------------------
; clrScr clear screen lines
;
; input: a = attribute
; b = number of lines to clear
; c = start line
; output: -
; destroys: af,bc,de,hl,af'
; -----------------------------------------------------------------------------
; -----------------------------------------------------------------------------
; utoa Converts to asciiz and print at cursor position an unsigned int
; Skips '0' on the left
; Updates cursor coordinates
;
; input: hl = unigned int to convert
; output: -
; destroys: af,bc,de,hl
; -----------------------------------------------------------------------------
; -----------------------------------------------------------------------------
; prtDec Print a asciiz string representing a number at cursor position
; Skips '0' on the left
; Updates cursor coordinates
;
; input: hl = pointer to asciiz string
; output: hl = pointer to end of string
; destroys: af,bc,de,hl,af'
; -----------------------------------------------------------------------------
; -----------------------------------------------------------------------------
; prStr Print a asciiz string at cursor position
; Updates cursor coordinates
;
; input: hl = pointer to asciiz string
; output: hl = pointer to end of string
; destroys: af,bc,de,hl,af'
; -----------------------------------------------------------------------------
; -----------------------------------------------------------------------------
; prChr Print a character at cursor
; Updates cursor coordinates
;
; Based on code by Andrew Owen in a thread on WoSF.
; Based on code by Tony Samuels from Your Spectrum issue 13, April
; 1985. A channel wrapper for the 64-column display driver.
;
; input: a = char to print
; output: -
; destroys: af,bc,de,hl,af'
; -----------------------------------------------------------------------------
; =============================================================================
; VARIABLES
; =============================================================================
NMIbuf word pointer to NMI_BUFFER
savedSP word SP register saved on NMI navigator entry
divRAM word number of 8k RAM pages found on divXXX
esxDOSv byte version of esxDOS
'5' version is 0.8.5
'6' version is 0.8.6
flg128k byte copy of NMI_BUFFER RAM Size (0=16k,1=48k,2=128k)
bDName bytes selected (at cursor) file/dirname asciiz string
bDAttr byte selected (at cursor) file/dirname attributes (like MS-DOS)
bit 4 (1=directory, 0=file)
ovrBuf word address of overlay buffer
; =============================================================================
; CONSTANTS
; =============================================================================
SIZ_OVR size of overlay buffer
COL_MID attributes of mid zone
COL_TOP attributes of top line
COL_BOT attributes of bottom line
COL_CUR attributes of cursor line
COL_ERR attributes of error message
; =============================================================================
; esxDOS STRUCTURES
; =============================================================================
; ----------
; NMI_BUFFER
; ----------
;
; Offset Size Description
; ----------------------------------------------------------------------------
; 0 1 byte I <- 48k SNA, 27 bytes
; 1 8 word HL',DE',BC',AF'
; 9 10 word HL,DE,BC,IY,IX
; 19 1 byte Interrupt (bit 2 contains IFF2, 1=EI/0=DI)
; 20 1 byte R
; 21 4 words AF,SP
; 25 1 byte IntMode (0=IM0/1=IM1/2=IM2)
; 26 1 byte BorderColor (0..7)
;
; v0.8.0, v0.8.5
;
; 27 2 word PC (Program Counter) <- 128k SNA, 4 bytes
; 29 1 byte RAM bank paged in @ $c000
; 30 1 byte TR-DOS (SNA file format)
; 30 1 byte RAM Size (0=16k,1=48k,2=128k) <- CONFLICT !!!
;
; v0.8.6
;
; 27 1 byte RAM Size (0=16k,1=48k,2=128k)
; 28 2 word PC (Program Counter) <- 128k SNA, 4 bytes
; 30 1 byte RAM bank paged in @ $c000
; 31 1 byte TR-DOS (SNA file format)
;

Binary file not shown.

Binary file not shown.

Binary file not shown.

BIN
SD/SYS/VDISK.KO Normal file

Binary file not shown.