6
Currently unsupported features / known bugs
No long file names
No wildcards yet in BASIC commands
No 64K clusters
No extended partitions
BASIC/Tape Emulator: You can overwrite ESXDOS system using LOAD CODE that crosses $2000
Commands: Proper argument/syntax checking is not done yet on most commands
FAT Driver: +3DOS header is set on file creation and never updated when file size changes
FAT Driver: rename() isn't even remotely posix compliant
FAT Driver: Directories read-only attribute isn't always respected
BIOS: version of system file isn't checked against the ROM version (beware of a mismatch)
TR-DOS: FORMAT and MOVE commands don't work yet + too many to list ;)
Cold start
To perform a cold start without powering off your ZX Spectrum, press the reset-button and hold the SPACE
key while resetting.
This way ESXDOS reinitializes.
Drive Naming Convention
Drives are named according to their type and partition number.
For the first hard drive and partition, it would be named hd0 (or sd0 if using DivMMC).
You can see a list of drive names when ESXDOS runs it's initial BIOS drive detection (on a cold start).
BASIC commands
On all BASIC commands that use a drive parameter, you can use * for the current drive.
[…] means it’s an optional parameters.
GOTO [drive] ["path"]
Example:
GOTO hd0"demos"
This will change the current drive and directory to hd0:/demos.
You can use it to change the current drive, dir, or both.
CAT [drive]
Example:
CAT, CAT *, CAT hd1
Without specifying a drive a fast CAT is done (no speccy header info is displayed).
LOAD drive "path/filename" [CODE]|[SCREEN$]
MERGE drive "path/filename"
Example:
LOAD *"/test/blabla", etc
SAVE drive "path/filename" [LINE]|[CODE]|[SCREEN$]
Example:
SAVE *"filename" SCREEN$, etc
ERASE [drive] "path/filename"
Example:
ERASE "filename", ERASE *"filename", etc