21

No reason to expect it works at all. So if the CPU can even start executing the code, the moment where it goes wrong is when there are instructions for a newer CPU, or some chipset-specific initializations are done. The BIOS is tailored for the specific motherboard, which will have a certain chipset for a certain CPU class, and therefore it also expects ...


20

How interchangeable was PC BIOS? Usually not interchangeable at all. Keep in mind, there is no single PC-BIOS, but a machine BIOS. Different CPUs, chips sets and additional hardware need specific initialisation. And, at least for generic DOS, specific drivers. To start with, plug-in-compatible bios was only a thing for 100% hardware clones, something only ...


13

It's part of the BASIC interpreter loop. It reads one byte of the tokenized BASIC program, setting zero flag if it's a colon or a zero byte and clearing the carry if it's a number. You can see it used in the main part of the interpreter loop at address C6B5. I'm not sure why this routine was placed in zero page. It's a cycle (or rarely two) faster to use ...


6

As I was expecting, it was an error in my code :) pelrun was very kind and found the bug (see my question on CPCWiki's forum) so props to him. I'll try to explain the issue: Notice I'm hooking into the jump entry by setting up a FAR CALL. Notice how that's a FAR CALL and not a JUMP? There's an extra return address there that shouldn't be pushed into the ...


6

In addition to the Community Wiki answer: This routine with entries CHRGET and CHRGOT is not only part of the interpreter loop, it used in every statement and function which has to "parse" further data from the BASIC text (program), e.g. for parameters. On some occasions the pointer TXTPTR will be stacked, typically while executing a DEFFN'd function. ...


5

The model of how the Monitor command line works in the Apple II Reference Manual, and most other documentation, isn't really in line with how it does work. It doesn't help that the Monitor itself, at least as far as command line parsing goes, is more a set of hacks than anything truly coherent. The following is an excerpted and edited copy of my personal ...


2

Okay stealing text from the Apple Monitor unpeeled: $31 MODE - This byte is used by the Monitor command processing routines to control parsing and to control operations when a blank is encountered after the hex digits. For example, a hex address followed by a colon causes setting of MODE so that during further processing of the input line each blank ...


Only top voted, non community-wiki answers of a minimum length are eligible