I've just merged initial support for this machine, I've still got a few more features to add, but so far we've got:
* Gencon switchable between 40x25 and 80x25. There's redefinable font and UDGs as well
* Lores graphics support
* PSG support
Although I've only tested on CP/M, in theory the -lsmc777 library should be able to be used under S-OS as well.
appmake has been updated to support creating a disc in the appropriate format.
Sony SMC-70/SMC-777
-
- Well known member
- Posts: 203
- Joined: Mon Feb 26, 2018 12:58 pm
My game H-Tron now supports the SMC-777 in CP/M mode. I will also make a native version as soon as z88dk supports creating native boot disks.

Since today's nightly, the created .dsk file can be read correctly with the current Takeda emulator version (previously we had to use an older version from December 2017).
Can anyone please do some testing with the SMC-70 Takeda emulator (smc70.exe)? It should be compatible with the SMC-777, but neither Dom nor I have roms for that system.
P.S. So far I didn't notice any side-effects with the introduction of zsdcc 3.8.5 r10892.

Since today's nightly, the created .dsk file can be read correctly with the current Takeda emulator version (previously we had to use an older version from December 2017).
Can anyone please do some testing with the SMC-70 Takeda emulator (smc70.exe)? It should be compatible with the SMC-777, but neither Dom nor I have roms for that system.
P.S. So far I didn't notice any side-effects with the introduction of zsdcc 3.8.5 r10892.
-
- Well known member
- Posts: 203
- Joined: Mon Feb 26, 2018 12:58 pm
I have tried the new hires graphics modes, they work fine, but: when I switch to mode 4, draw some graphics and then return to mode 0, the graphics stays on the screen, even after clearing the screen by calling printf("%c",12); and printf("\x0c");
A clg() call does not help either.
How can I remove the graphics output from the screen?
A clg() call does not help either.
How can I remove the graphics output from the screen?
- dom
- Well known member
- Posts: 1235
- Joined: Sun Jul 15, 2007 10:01 pm
Yes. It?s slightly odd having different screens for text and graphics. I?m genuinely not sure how we should make things work but at the moment the graphics planes are only cleared when in graphics mode.
So in your case either switch to a graphics mode before switching or text or call cls when in graphics mode before switching to text mode.
So in your case either switch to a graphics mode before switching or text or call cls when in graphics mode before switching to text mode.
-
- Well known member
- Posts: 203
- Joined: Mon Feb 26, 2018 12:58 pm
Ah, no problem - now I'm clearing the screen before switching back to text mode, and everything is fine.
One final question: after switching back to text mode for the first time, the screen background has turned black. How can I return it to the standard blue background of the SMC-777?
Or can I set it to black at the beginning? By changing to graphics mode and then to text mode, or is there some better way?
One final question: after switching back to text mode for the first time, the screen background has turned black. How can I return it to the standard blue background of the SMC-777?
Or can I set it to black at the beginning? By changing to graphics mode and then to text mode, or is there some better way?
-
- Well known member
- Posts: 203
- Joined: Mon Feb 26, 2018 12:58 pm
But the current CYAN colour is different from the SMC-777 default background colour, which is much darker and closer to blue.
So I tried to turn everything black on startup, but textbackground() seems to behave strangely: when called in text mode, it shows no effect, but as soon as you switch to graphics mode, the colour change takes effect (where you wouldn't expect it).
That's of course not a big problem, but maybe you can fix that without much effort.
So I tried to turn everything black on startup, but textbackground() seems to behave strangely: when called in text mode, it shows no effect, but as soon as you switch to graphics mode, the colour change takes effect (where you wouldn't expect it).
That's of course not a big problem, but maybe you can fix that without much effort.
- dom
- Well known member
- Posts: 1235
- Joined: Sun Jul 15, 2007 10:01 pm