Coded in as-z80 assembler.
Coded in pasmo assembler.
Have a “data exchange” area (between C and asm code) at offset 0. (area len is $20 bytes)
Actual code start at offset $20.
For each FLOS procedure:
Note: To link to absolute address, SDCC want a separate C file, with separate segment. That's why we need to generate separate source file flos_proxy_code.c
(For conversion from binary to C source file, xd.exe utility used.)
This is a C file, which contain FLOS C functions.
Each function do the following:
Note: For now, not all FLOS calls have equivalent C functions, but I plan to add missing functions.
The call chain is:
The content of “obj” folders is auto generated by SDCC compiler and linker.
Start address 5000.
|Offsets in file||Description|
|0000||C start up code|
|0080||asm proxy - “data exchange” area|
|00a0||asm proxy - actual code|
|CODE||start of code|
|DATA||start of data|
(you set CODE and DATA values and also STACK value, in your project Makefile)