New SpartaDOS Version 4.39 available

Download @SDX

What’s new in SpartaDOS 4.40

News in no particular order.


* handle 128k cartridges and Maxflash cartridges.
* fixed the banked memory management so that all
PORTB-based memory extensions are handled properly.
* the user can now force the DOS to use the
specified RAM bank when in BANKED mode.
* the CONFIG.SYS file can now contain comments:
any line starting with a semicolon is ignored.
* the default CONFIG.SYS is now stored as a file
on the CAR: device and loaded from there instead
of being hardcoded inside the kernel.
* CONFIG.SYS selection mechanism integrated with
the kernel: if there’s a subdir named SELECT.CFG
in the main directory of the boot drive, and it
contains *.CFG files, a menu is displayed allowing
the user to use any of the *.CFG files instead
of the main CONFIG.SYS file to configure the
* do not force boot drive number to D1:, unless it
is unset by the OS.
* make CRUNCH recognize a comma as an argument
separator in command lines.
* new symbol U_GETKEY pointing to a routine reading
a byte from the keyboard. Make it to be done through
HATABS. COMMAND.COM & friends now use the symbol.
* new symbols: COMTAB2, DEVSPEC, DEVNAME giving access
to new variables and device tables.
* detect and use the 65C816 CPU for faster DOS
initialization, if present. Also set a flag (at
COMTAB2+$B4) for programs, indicating the presence
of this CPU.
* fixes to load CONFIG.SYS from extended FS.
* fixes to use 15 disks.
* an attempt to overwrite DOS kernel or I/O library
while loading a file aborts the loading and causes
the error 179 „Memory conflict“ to occur.
* new version of the SpartaDOS filesystem (2.1), able
to cope with sectors greater than 256 bytes,
implemented in the formatter’s BUILDDIR function.
* new density (DD 512) added to the formatter’s menu.
* PRINTF has a new subfunction: %L – print long
(32-bit) decimal.
* NUL: (null) device is now available; writing to
the device has no effect, reading from NUL1: (NUL:)
causes end of file error, NUL2: returns unlimited
zeros, NUL3: returns unlimited random bytes.
* closer integration of the SpartaDOS-specific
devices (CON:, PRN:) with the underlying OS.
Installing any E: driver changes the CON: driver
now as well.
* the international charset is now usable in
OSRAM modes (in SPARTA OSRAM only if not more
than 6 buffers are defined).


* fixed to access 15 disks (A: – O:)
* implemented new, extended version of the SpartaDOS
filesystem, able to handle 512-byte sectors.
Partitions up to 32 MB are now possible.
* implemented user-selectable date/time formatting
for directories.
* for files larger than 999999 bytes, display the
file size in kilobytes when listing the directory.
* added new function of the misc entry: 32-bit
integer to decimal ASCII conversion (misc 11).
* the MKDIR bug (wrong status code in the new
directory header) is fixed.
* the RMDIR bug (while removing a directory,
the status byte was set to a value identical as
for a deleted file, so you could never undelete
a directory reliably) is fixed.
* the ERASE bug (when the file being deleted was
marked as „boot“, the boot pointer in the
bootsector remained unchanged) is fixed.
* the GETCWD bug, causing it to omit filename
extensions in the path returned, is fixed.
* the RENAME function is modified so that you
shouldn’t be able to generate two (or more)
files with the same name using the RENAME
* fixed the bug in directory formatting routines
causing it to screw up displaying the year
number in the directory listing.
* fixed the ‚Y2K‘ bug in directory formatting
(when year == 2000, the datestamp was not
* FS inconsistency no longer causes the DOS to
halt, it now aborts the operation and displays
an error 181 „Filesystem corrupt“.
* warm reset no longer resets current directories.
* the SEEK (i.e. POINT) function should now be
much faster on very long files.


* XEP80.SYS fixed to work with PAL computers.
* RAMDISK.SYS and SIO.SYS fixed to access 15 disks.
* RAMDISK.SYS uses 65C816 block move instructions
if the new CPU is present.
* RAMDISK.SYS now defaults to the O: drive.
* new SIO driver SIO.SYS featuring better serial
speeds control and other nifty stuff.
* new COMMAND.COM extensions: RUNEXT.SYS and
COMEXE.SYS. The former provides custom filetype
associations, the latter automatically manages
the module while executing an *.EXE file.
* new driver: ARCCLOCK.SYS (ARC clock driver)
* new driver: CA2001.SYS (CA-2001 Synchromesh)
* new driver: PBI.SYS fixing the problem with
burst transfers from a harddisk to the memory
at $D800-$DFFF.
* new driver: Z.SYS, allows you to access the
time/date functions from BASIC (compatible with
the old ZHAND from SpartaDOS 3.2).
* new driver: QUICKED.SYS, a software screen


* imported available utilities and incorporated
into the CAR device.
* make DUMP.COM recognize the /A switch (activating
the ICD’s code present in the program, but not
actually used).
* fixed a bug in DELTREE.COM causing it to hang
occasionally (DELTREE is former KILLDIR).
* INIDOS.SYS cleaned up, made more idiot proof.
It can now initialize the Maxflash version also.
* CHKDSK command removed from the and
added as a separate and a bit more sophisticated
program (try CHKDSK /B).
* minor cleanups in MDUMP.COM.
* CHVOL.COM and RPM.COM fixed to work with the new FS.
* TD.COM fixed to be Y2K compliant. It now also exports
new symbol I_TDON, so that user programs might
control the TD Line externally.
* similar thing made to KEY.COM (I_KEYON is the symbol
exported). Some cleanups made, too.
* COMMAND.COM is now extensible.
* preceding a binary filename with a # in COMMAND.COM
now forces the SDX module to be switched off before
* the COMMAND.COM can now do ECHO ON/OFF while executing
batch files.
* cleanups in FIND.COM
* fixes in the DF.COM related to 15 disks and other
* CAR.COM now can execute internal BASIC properly even
if the computer has a 1 MB RAM extension.
* CS.SYS obsolete, now integrated with the kernel.
* quite a few new utility programs added.
* UNERASE.COM famous bug (described by Nelson Nieves
in 1991) is fixed.



These variables used to point to the I: drive in a fixed
manner. Now they are set by RAMDISK.SYS to the actual
ramdisk drive number (O: by default), unless already
set by user. 


This variable does not get set by the system now – you
can still define it on your own, though, and its function
is the same as before.

3) COPY=d:>path>

Should point to an existing executable. If defined, the
Command Processor uses this executable instead of its
internal COPY command.


Selects the date/time format for SPARTA.SYS and the
Command Processor. 1 is MM/DD/YY and 2 is DD/MM/YY.

5) TEMP=d:

Points to the disk where temporary files are welcome.
Set by
RAMDISK.SYS to its drive number (O: by default)
unless it was already set by user before.


– based on works done by: Prof!, MMMG, DLT Ltd.
– new code and design: DLT Ltd.
– hardware: Pasiu/SSG, Jad, Zenon/Dial, DLT Ltd.
– hosting:
– devtools: DLT Ltd., Tebe/Madteam, others
– other support: Epi/TRS, Krap, Mikey, Pin/TRS