Demo for Sanco 8003
Go to file
2023-10-15 15:09:10 +02:00
src Add busy loop delay module. 2023-10-15 15:09:10 +02:00
.clang-format First commit. 2023-10-09 22:06:34 +02:00
.gitignore First commit. 2023-10-09 22:06:34 +02:00
conf.cfg Use miminal config file and bare-bone custom CRT. 2023-10-11 22:07:04 +02:00
Makefile Fix incremental compilation. 2023-10-15 15:08:25 +02:00
README.md Add documentation about C/ASM calling conventions. 2023-10-13 21:39:40 +02:00

ceda-demo

Demo for the Sanco 800x.

The purpose of this demo is mainly to thinker with the hardware of the mentioned computer, since we are reverse-engineering it, and even writing an emulator.

This repository is part of the CEDA project by Retrofficina GLG Programs.

C/ASM calling conventions

Because the folks at z88dk were not able to put this plain and simple table in their messy documentation 😄

Prologue

    push    ix
    ld      ix,$0000
    add     ix,sp

Parameters stack

    uint8_t
        ix+$04

    uint8_t, uint8_t
        ix+$04, ix+$05

Access call parameters

    ld      a,(ix+$04)
    ld      a,(ix+$05)

Return value

    uint32_t    de (msb), hl (lsb)
    uint16_t    hl
    uint8_t     l
    void*       hl

Epilogue

    pop     ix
    ret