Zeal 8-bit OS is still a beta version, so it is not complete and may still have bugs.
The Operating System is divided in two parts: the kernel, common to all targets and the targets implementation.
Kernel changelog:
- Improved logging by implementing a string formatter in
strutils
. - Added a new
HostFS
file system usable in emulated environment, convenient to access host's file system. - Added a new rule
asmconf
to the Makefile to manually generate the configuration file without going through themenuconfig
. - Added Mac OS build support, by @zoul0813 in #35.
- Implemented HTML documentation for the kernel by @atirut-w in #34.
- Added a reset
ioctl
command for standard output. - Fixed a bug in the binary loader (MMU version) that resulted in files not being closed.
- Fixed a bug in the binary loader that accepted 0-byte programs.
- Added support for user programs as big as 48KB in the binary loader (MMU version).
- Implemented kernel headers for GNU's assembler (
z80-elf
). - Added explicit error codes in the kernel headers to simplify debugging, by @zoul0813 in #39.
- Added support for Multiple User Configs, including default configuration files for different targets, by @zoul0813 in #38
- Added a base SDCC makefile as part of the kernel headers to ease the compilation of new Zeal 8-bit OS programs. (A few fixes to this base makefile were made by @zoul0813 in #42)
Target support changelog:
Zeal 8-bit Computer
- Implement the new
ioctl
command for the video driver, it restores the palette, the video mode, and all the cursor settings. - Fixed a bug in the video driver that always made it the standard output.
Romdisk changes
- Added decimal output and usage to
ls
command, optimized 32 bit decimal output by @sijnstra in #33. - Fixed a bug in
hexdump
command that printed an uninitialized character. - Implemented a new transfer file command named
xfer
. A newtools/
directory has been created at the root of this project, it contains thexfer.py
script that can be used by a host computer. - Added support for commands
_:/
and_:
to switch the current disk (where_
is the letter of the disk to switch to) - Fixed the return registers of
byte_to_ascii
routine to simplify the workflow in some cases. - Added an error message when a subprogram exits a return value different than 0 (only on targets with an MMU)
TRS-80 Model-I
No changes were made
Agon light
No changes were made
New Contributors
Thank you very much to the contributors of this release:
About the assets
The assets below are the build for Zeal 8-bit Computer target, compile with the given configuration *os.conf
.
The disk image 0x0000_os_with_romdisk.img
is meant to be used with the emulator. It has been compiled to run from physical address 0x0000
, as shown in the configuration file. It is not suitable for the real hardware that has a bootloader flashed (at 0x0000
)
The disk image 0x4000_os_with_romdisk.img
is meant to be used with the real Zeal 8-bit Computer hardware as it has been compiled to run from address 0x4000
from ROM.