I've fixed the text not appearing - the text attribute value wasn't being correctly initialised (it was in bss rather than data sections).
I'm not sure what the cure for cursor remaining visible is though...
ZX81: Plot, Unplot and test-point for LOWRES (64x44) screen
Great progress, thanks!
There is one problem left: in Z9001 ANSI mode, the colour of the plotted pixels is not always the same, it seems to depend on what character colour was there on that screen location before.
Note that in Z9001 ANSI mode the characters are printed in white (which looks quite good IMHO, but you can of course change it to be all the same colour if that makes it easier), while in non ANSI-mode everything is green.
But when you plot over such a white character, the pixel gets white as well.
And the green pixels in the upper left part of the screen come frome the startup prompt...
OS
>[cursor]
...which is printed in green.
The other problem is the blinking cursor on the Z9001 colour systems, maybe you have an idea how to get rid of it.
In ANSI mode, it always stays where the command prompt line was before the program was started (see the screenshot above).
In non-ANSI mode, it always follows the text output:
P.S. Calling clg() does not change anything about these two issues.
There is one problem left: in Z9001 ANSI mode, the colour of the plotted pixels is not always the same, it seems to depend on what character colour was there on that screen location before.
Note that in Z9001 ANSI mode the characters are printed in white (which looks quite good IMHO, but you can of course change it to be all the same colour if that makes it easier), while in non ANSI-mode everything is green.
But when you plot over such a white character, the pixel gets white as well.
And the green pixels in the upper left part of the screen come frome the startup prompt...
OS
>[cursor]
...which is printed in green.
The other problem is the blinking cursor on the Z9001 colour systems, maybe you have an idea how to get rid of it.
In ANSI mode, it always stays where the command prompt line was before the program was started (see the screenshot above).
In non-ANSI mode, it always follows the text output:
P.S. Calling clg() does not change anything about these two issues.
Yes, the plot() mechanism is monochrome and has no effect on the colour attributes for any port.
For the -clib=ansi option, the default colour is white on black. I've spotted that the attributes weren't being cleared, they are now so everything appears in white on black. That's also sorted out the cursor problem!
For the -clib=ansi option, the default colour is white on black. I've spotted that the attributes weren't being cleared, they are now so everything appears in white on black. That's also sorted out the cursor problem!
Someone has now confirmed to me that the specs of the two EG2000 models were like this: the earlier one was 40?24 and 160?96, and the later one was 40x25 and 160x102.stefano wrote:FYI, a new behaviour is now present on the EG2000, the graphics try to work with a 160x102 resolution, but the earlier models would show only the first 100 lines.
Please update the targets page to 40?25 and 160?102, as we assume to use the newer model by default.
And while you are at it, please add the latest target additions to the list:
Casio PV-1000
Casio PV-2000
Sega SG-1000
Thanks for the new targets, it's great to have the list growing!
The wiki is sort of in transition to GitHub - I've updated the links on the forum to point to the new version, the new targets page is here: https://github.com/z88dk/z88dk/wiki/Platform