> > Yes, the actual values in the saved file don't matter. So if > > compatibility with the tokenised format is important one must > > recalculate those values. > > I believe that's true for the VIC-20 and C-64 but not for the PET. > I.e., you can load a program with pointers from any base address into > a VIC-20 or C-64 and just "RUN", but the PET will load at the load > address and not recalculate (nor repoint). So far I used a fixed address and it took me a few minutes to change that fixed number into a variable. For the moment this variable is "fixed" to $0801 but the idea is to change it when needed. Another challenge is the remark about the length of a line. I kept it to 80 because then a line, including line number fits nicely on a screen line. And having a line sized 80 chars means I don't have to work with a table like the C64 does. But then I ran into trouble when using several PRINT commands in one line and using the question mark in the first place. During a LIST the line ended up longer than 80 chars. But didn't the C64 have the same problem? Not being sure anymore I fired up my C64, typed a long line using question marks as well and saved it. Then I loaded it again. First find: the line was not shown completely, only 96 bytes were shown. Second find: when clicking it and doing a LIST, only the first two screen lines were printed to the screen. The 16 chars of the third line were not shown. The original line contained four question marks. When expanding them to PRINT, that means 4*4=16 extra chars. So the the C64 only keeps 80 bytes, problem solved :) But then I fired my C128 up and.... the bloody computer does handle longer lines well and there goes my "80 characters only" scheme. So it seems that, if I want to keep this compatibility claim, I have to use a table or whatever solution as well. -- Kind regards / Met vriendelijke groet, Ruud Baltissen www.Baltissen.orgReceived on 2021-10-30 10:00:02
Archive generated by hypermail 2.3.0.