Right now, when building a 6502 disk image, aambundle passes the .aastory through unmodified. This means that all the processing needs to happen on the 6502 itself—everything from parsing the CSS to building the font. (aambundle includes the entire font data file in the C64 disk image, and it's the interpreter's job to select and use the glyphs it needs from that.)
Some of this processing could be done far more easily in aambundle itself. The CSS could be preprocessed, for example, into the eight-byte blocks the 6502 interpreter uses. This would make the 6502 interpreter both smaller and faster.
The cost, though, would be making the 6502 interpreter less capable—it would need to be used with aambundle, not on its own. (But is anyone using it on its own as it is?)
Alternatively, aambundle could add a new chunk to the .aastory file, containing machine-readable data for the 6502 interpreter. The 6502 would use the new chunk if it was available, and parse the raw CSS (vel sim) if not. This would help with interpreter speed, but not with interpreter size—the CSS parsing code would still need to be in there. (The .aastory could be made smaller by removing the now-unneeded chunks, but I don't think that's where bytes really need to be saved, is it?)
What do people think?
Right now, when building a 6502 disk image, aambundle passes the .aastory through unmodified. This means that all the processing needs to happen on the 6502 itself—everything from parsing the CSS to building the font. (aambundle includes the entire font data file in the C64 disk image, and it's the interpreter's job to select and use the glyphs it needs from that.)
Some of this processing could be done far more easily in aambundle itself. The CSS could be preprocessed, for example, into the eight-byte blocks the 6502 interpreter uses. This would make the 6502 interpreter both smaller and faster.
The cost, though, would be making the 6502 interpreter less capable—it would need to be used with aambundle, not on its own. (But is anyone using it on its own as it is?)
Alternatively, aambundle could add a new chunk to the .aastory file, containing machine-readable data for the 6502 interpreter. The 6502 would use the new chunk if it was available, and parse the raw CSS (vel sim) if not. This would help with interpreter speed, but not with interpreter size—the CSS parsing code would still need to be in there. (The .aastory could be made smaller by removing the now-unneeded chunks, but I don't think that's where bytes really need to be saved, is it?)
What do people think?