![]() |
Including / compiling code to different addresses - Printable Version +- Forum (https://www.boriel.com/forum) +-- Forum: Compilers and Computer Languages (https://www.boriel.com/forum/forumdisplay.php?fid=12) +--- Forum: ZX Basic Compiler (https://www.boriel.com/forum/forumdisplay.php?fid=11) +---- Forum: Help & Support (https://www.boriel.com/forum/forumdisplay.php?fid=16) +---- Thread: Including / compiling code to different addresses (/showthread.php?tid=882) |
Including / compiling code to different addresses - JMcGibbitts - 06-08-2019 Hi there, I'm in need of some advice with loading code to specific addresses. 1. A way to include a ZXBC basic file - during compilation - at a specific address. Something like this... #INCLUDE "font.bas" ' load font relevant code to 24576 #INCLUDE "setup.bas" ' load program setup code to 24576 + compiled size of font.bas #INCLUDE "graphicscode.bas", 38000 ' load graphics code and variables direct to address 38000. This would see non-speed critical #INCLUDE code (and variables) first compiled to the program's ORG address (24576) and code (and variables) that must run in uncontended memory space - placed at the specified address. 2. How to directly include a binary blob to a specific address, without the use of labels and memmove, memcopy, zx7 unpack, etc. Something like this... ASM INCBIN "graphics.bin", 45000 END ASM Thanks Re: Including / compiling code to different addresses - boriel - 06-10-2019 It should be something like: Code: ASM Basically what you're asking is a LINKER to compile several .bas files into .obj code and link them at a later stage. This project will take time. I've been investigating (that the problematic part) current linkers and will try to make obj code compatible with the one used in SDCC. So people might perhaps link SDCC code with ZXBasic one. The main obstacle is to take 128K models (and others!) memory maps and take them into account. |