Hi everyone
New guy here.
I've been writing assembler and downloading it by embedding the machine code as data in a basic program.
I have successfully managed to download and run programs several kbytes long, but I have a strange problem.
The mystery boils down to odd behaviour (yes, UK spelling) of the Poke statement.
This works fine:
10 POKE &H4000,2
20 PRINT ".";
30 GOTO 10
But this does not:
10 POKE &H4000,1
20 PRINT ".";
30 GOTO 10
In the first case I get lots of dots displayed on the terminal, as expected.
In the second case I have to press a key on the terminal before each dot is displayed.
For some reason the Poke statement does not like the data value 1, but is happy with all other values I've tried.
I've tried different addresses, but all seem to do the same.
I've tried two different terminal programs - same result.
Other tests seem to indicate it is nothing to do with the Print statement. I first noticed to problem when I was reading from data statements and poking the values to memory, without any printed output. Even short programs seemed to just hang and it took me a while to discover that a few key presses 'fixed' it, allowing the machine to be poked into memory and run.
Am I missing something really silly and obvious???
I'm using a new 'RC2014 Pro' kit which I received earlier this week. Everything seems to be working but it is a new build so isn't proven reliable hardware. I don't have any other RC2014 systems, so can't rule out a hardware issue.
My RC2014 is a backplane Pro, 64k RAM, paged ROM, dual clock, dual serial SIO/2, Z80 cpu, digital I/O (with diodes).
I'm running 32k MSBASIC.
I'm hoping someone can tell me I'm an idiot because... <appropriate explanation required>
Thanks for taking the trouble to read about my problem. Any comments appreciated.
Steve