AltairClone wrote:Note that changing the load address specified in each line of a hex file line in an attempt to relocate a program will fail in almost every case. All the jump, subroutine, and data references in the program will fail when the program runs because changing the load address does not change the address references that are part of the code.
However, I happened to modify CDBL back in 2016 to make it position independent so that a CDBL PROM will run whether it is physically installed at FF00, E000, 8000, etc. But again, position independent 8080 code is very rare.
I assume you were burning a PROM of some sort to run in the 8800c? Your PROM burning software most likely has a manual or automatic offset mode where it maps the lowest address in the .hex file (e.g., 4C00 in this case) to address zero in the PROM it's going to burn. No change to the hex file is actually required.
Mike
Yes, you are exactly right. I knew that CDBL could be stored in ROM since it's already there in the FDC+ (nice job BTW!)
The changes to the HEX file were required for the AltairDuino which only loads a HEX file at the addresses spcified in the file itself.
I also want MBL, TURMON and Intel HEX loader in the same ROM. Do I need to make one load module of them before burning or can I burn one at a time?