Hi.
I have just tried this on another computer that I knocked up, this time a 6809 running Microsoft BASIC. Again, 32K RAM (
http://searle.hostei.com/grant/6809/Simple6809.html )
The exact same program actually fails completely with the version ported by Microsoft to the 6809...
Code:
7 DIM CL$(71,24)
8 FOR Y=0 TO 23:FOR X=0 TO 70
9 CL$(X,Y)=CHR$(27)+"["+MID$(STR$(Y),2)+":"+MID$(STR$(X),2)+"H"
10 PRINT ".";:NEXT X:PRINT:NEXT Y
RUN
.............................
?OS ERROR IN 9
OK
As you can see, it appears garbage collection doesn't kick in automatically (but see below) with this version. So, the 1979 6502 version in the UK101 actually performs better than the 1982 6809 version !
The version of BASIC that I used above was CoCo Color BASIC 1.2 / Extended BASIC 1.1. I also tried it on a Dragon 32 (real machine) and got exactly the same error at the same point (the Dragon is virtually a clone of the CoCo, but I wanted to make sure my ROM mods hadn't affected anything).
So, it isn't just this version that has problems - other versions may be worse.
To get the above working on the 6809 I had to reserve some space, so I typed "CLEAR 15000" before running - much better, and run to end the same way as on the UK101 - pausing occasionally then resuming.
So, there appears not to be an "error" with the UK101 BASIC, merely an inefficient way of doing the grabage collection which existed in later versions of Microsoft BASIC as well.
Grant.