Yet another snowy day.
I have completed and tested the CP1610 Assembler URM Interpreter (the source code is uploaded on the side bar - I will eventually upload everything). It ended up about 300 decles (the GI version of bytes, 10 bits long) which isn't too bad.
It passed the fairly simple processor test code I wrote and some other tests written to check the system functions.
I can now get away from CP1610 mostly. It's confusing because the CP1610 and URM are backwards - the CP1610 does mvii #42,r0 to put 42 in r0 and the URM does it the more usual way around, mov r0,#42 and I keep getting them mixed up.
So, I next need to think about utility functions. There are two that spring to mind immediately ; the first one is to maintain a sorted deck of cards, and the second one a sort of 'printf' function. The sound setting probably wants to go through a function itself. The controllers are effectively virtualised by the sys operation.
Utility functions need to be thought out because the Unisonic comes in with 2k x 10 bit ROM which is always available, so it makes sense to write routines that can be reused in other cartridges.
If I ever write any. Which given this is day 17 of 31, is not that likely.