Coder Social home page Coder Social logo

rtm-z80's Introduction

Retro Tiny Multitasking kernel for Z80 - RTM/Z80

(last update on 28 Oct 2023)

RTM/Z80 is a multitasking kernel, built for Z80 based computers, written in Z80 assembly language, providing its users with an Application Programming Interface (API) accessible from programs written in the C language and the Z80 assembly language.

It is intended to be a simple and easy to use learning tool, for those who want to understand the tips and tricks of the multitasking software systems.

Current version is 2.6

RTM/Z80 can be used on the following environments:

• Z80SIM Z80 simulator (e.g. on Windows, under CygWin)

• Z80ALL standalone homebrew Z80 computer (25MHz Z80, 4 x 32KB RAM, KIO, VGA, PS/2, DS1302)

• RC2014 homebrew Z80 computer, using the following hardware configuration options:

o SC108(Z80 + 2x64KB RAM) + SC110(CTC+SIO) , or

o SC114(Z80 + 2x64KB RAM) + SC110(CTC+SIO), or

o any Z80 board + 64/128KB RAM + SC110(CTC+SIO) , or

o any Z80 board + 512KB RAM+512KB ROM Memory Module + SC110(CTC+SIO)

• RCBUS based homebrew Z80 computer, using the following hardware configuration options:

o SC706(Z80) + (SC707 / SC714 RAM) + ( SC716(SIO) + SC718(CTC) ) / SC725(CTC+SIO)

• any CPU Z80 board supporting IM2 + any 64KB RAM board + any CTC board + any SIO ( or KIO board ) (in this case, the I/O ports must be set in the source code, see manual, chapter Porting RTM/Z80 to other hardware)

The mandatory hardware requirements: 64KB RAM, support of Z80 Interrupt Mode 2, CTC, SIO or KIO.

New in v2.4 : improved communications I/O support

see DEMO folder for getxfile, putxfile (XMODEM compatible)

New in v2.5 : KIO support added

New in v2.6 : Z80ALL version added,

VGA display support added for Z80ALL,

VGA System status display added for Z80ALL,

PS/2 keyboard support added for Z80ALL,

extra 2x32KB RAM support added for Z80ALL,

real time clock DS1302 support added for Z80ALL

DEMO VIDEOS

(see source files in the DEMO folder)

RTMDEMO.MP4 - 2 concurrent games, executed on RC2014

BIRDS.MP4 - the 'birds, eagle & kite' game, executed on Z80ALL

System status display

( only for Z80ALL version )

(running) running

(after shutdown) after shutdown

For Z80ALL, the "RTM/Z80 system status", displayed in real time during the execution of a multitasking application, is very useful for:

  • assessing the dynamic memory load ( is it dangerously close to the maximum capacity? )
  • viewing the task execution dynamics ( the tasks active <---> waiting switching )
  • learning about the system load ( how long, in %, stays the system idle - is the % dangerously low ? )
  • learning about the tasks stack size ( is the remaining space in stack dangerously low ? )

Using the real-time VGA system status display, a multitasking application can be fine-tuned, in an efficient way.

rtm-z80's People

Contributors

laci1953 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

rtm-z80's Issues

Amstrad 464

Hi,

Would it load on my Amstrad 464 with 64 KB of memory?

Please post some screenshots and a video (no matter which Z80 machine) so people can get the idea of what is it.

Running out of space for build.

I have built all but rtsys.as in situ.

CP/M 2.2 running on an SC131.

D>zas rtsys.as
RTSYS.AS:1456: Out of memory

I have 55302 Bytes in TPA.

Running out of memory again.

I am building this on the SC131 hardware, not using UDO's z80sim.

D>b:submit make

D>D:
D>ZAS -J DLIST.AS

D>ZAS -J BALLOC.AS

D>ZAS RTSYS1.AS
RTSYS1.AS:6: Can't open include file config.mac

D>ZAS -J RTSYS2.AS
config.mac:110: No space for macro def'n

D>ZAS -J RTCLK.AS
config.mac:289: No space for macro def'n

D>ZAS -J QUEUE.AS

D>ZAS -J MAILBOX.AS

D>ZAS -J IO.AS
IO.AS:11: Can't open include file config.mac

D>ZAS -J SNAPSHOT.AS

D>ZAS -J HEXLOAD.AS
config.mac:280: No space for macro def'n

D>ZAS -J UTIL.AS

D>ZAS -J CMD.AS

D>ZAS BOOT.AS

D>ZAS -J CSV.AS

D>ERA RT.LIB
D>LIBR R RT.LIB RTSYS1.OBJ RTSYS2.OBJ CMD.OBJ SNAPSHOT.OBJ
bad file format: RTSYS1.OBJ
unknown record type: 26

D>LIBR R RT.LIB HEXLOAD.OBJ IO.OBJ QUEUE.OBJ RTCLK.OBJ MAILBOX.OBJ
module HEXLOAD.OBJ defines no symbols (warning)
bad file format: IO.OBJ
unknown record type: 26

D>LIBR R RT.LIB BALLOC.OBJ DLIST.OBJ UTIL.OBJ BOOT.OBJ CSV.OBJ
module BOOT.OBJ defines no symbols (warning)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.