I just got this DREAM 6802 sorted out (it wasn't able to save tapes before - turned out to be a bent transistor with base and emitter touching). I'm trying to understand a bit more about how CHIP OS works. I entered a program from the original articles on the project, but the keys it uses are different from the ones the joystick is 'programmed' to use. So I've been trying to figure out how exactly the program pulls in the keys and from there divine which keys it is looking for and change them.

So where I am confused is exactly how these CHIP OS subroutines are called.

For example: 2MMM is DO MMM - which calls the chip subroutine at MMM. There is table of CHIPOS subroutines here. I assumed an instruction like 22DA would mean call chipos subroutine 2DA. But I do not see any such thing in the list of subroutines. So I'm clearly missing something. Anyone understand how this works? I'm pretty sure a chipos subroutine is being used to check for keypresses at the keypad, but I'm just not seeing how we get there.