Page 1 of 1

ZX81 Noob development questions

Posted: Tue Sep 24, 2019 9:16 am
by Mozartkügel
Hi guys! I'm completely new to the ZX81. I started out with the C64/128 back in the day but I've become really interested in most old home computers and their homebrew scenes. I saw a few game videos on Villordsutch youtube channel and got excited about the fun looking graphics on the ZX81. I found a cheap ZX81 on a local auction site too, so I have one on the way to me now, yay!

I have a couple of noob questions if I may:

1. Are there some dedicated graphic tool(s) to create ZX81 graphics? It would be fun to create some game mock up(s) as a first step.

2. What's the graphics mode used in for example Uwol and Alien Mind? Is it a "standard text mode"? I love those chunky graphics! :)

2. Do you guys have experience with ZXpand, ZXblast or Vdrive? Are they very similar or is there one you prefer. ZXpand seemed to have some really nice features at least. I love that it has built in AY sound.

3. I was thinking of trying to tinker around a little bit in C for the ZX81. I know C isn't the optimal language for these old machines, but the main point would be to have fun. I've not enjoyed basic or assembly as much so far (maybe it's because I'm too busy all the time). I found this amazing looking C tutorial series in German: http://forum.tlienhard.com/phpBB3/viewforum.php?f=8 Has anyone tried going through it with the help of google translate? :D Are there any tutorials in English or perhaps some tiny C template that would set up say background graphics / "sprites" / keyboard & joystick input to learn from?

Actually I just realized that Uwol is open source and written in C. I'm more of a tinkerer than a real coder so it's a bit of a overwhelmingly big project to decipher "backwards". I need to study it though.

4. Is it possible to load your own games converted to tape files from, for example, a phone to the ZX81 like on some other old computers?

Thankful for any help! :)

Re: ZX81 Noob development questions

Posted: Tue Sep 24, 2019 9:55 am
by mrtinb
Hi :) And Welcome!

ad 1) Try the online tool Sketchy created by the same developer as the ZXpand.

ad 2) ZX81 is only build for text mode. The graphics are checkers patterns in the font. You get the idea, when you look at the link above.

Back in the day someone found a way to hack graphics mode, but the ZX81 is not built for it. It's called Pseudo Hires. It uses some of the bitpatterns from the ROM to create graphics. Not all bitpatterns are available, so the graphics looks a little corrupt. Software implements their own display driver. Some games using this are Fortyniner and Micromouse Goes Debugging.

Later someone made hardware modification to the RAMpack, and then it's possible to do Real Hires 256x192. Z88DK C compiler supports this mode. ZXpand and ZXblast already has this hack implemented. This requires custom display driver as well. Z88DK C compiler has implemented this. (Someone has even hacked hires up to 320x200, but it's more rare.)

There also exists hardware expansion to create custom fonts. This hardware enables font can be read from RAM and not from the ROM. It is called UDG - User Defined Graphics. Fewer games uses this approach. A replica of this hardware is UDG4ZXpand.

ad 2.1) I have both ZXpand and ZXblast. ZXpand is the most widespread. In the German forum Vdrive is better known. ZXblast is still in beta, so I recommend ZXpand.

ad 3) Look at the examples on Z88DK C compiler. And the guide on the German forum is also fine.

ad 4) You can convert .P files found on the Internet to .WAV files, and output it with your PC soundcard or as I do move them to your phone and play them from there. I use the tool Java ZX81 Tape Converter to convert to .WAV. I have constucted a TZXduino as well. It will simulate a tape player on an Arduino and load it from SD card. ZXpand is the easiest way though.

Re: ZX81 Noob development questions

Posted: Tue Sep 24, 2019 10:14 am
by Mozartkügel
Thank you so much @mrtinb ! This is pretty much everything I need to know for a real "kick-start", yay! Mange tak! :D

Re: ZX81 Noob development questions

Posted: Tue Sep 24, 2019 2:45 pm
by 1024MAK
Hi Mozartkügel.

Welcome to our forum :D

One thing that my friend above did not say, the standard internal amount of RAM in a ZX81 is just 1k bytes. However, this is just enough for some simple, but excellent and interesting games. You will be amazed what can be fitted in just 1024 bytes of RAM. And this internal RAM is capable of ‘hi-resolution’ graphics. If you have a look in the games section you will find lots of dr beep’s 1k games :D

You may also wish to introduce yourself in the Welcome area ;-)

Have fun :D


Mark

Re: ZX81 Noob development questions

Posted: Tue Sep 24, 2019 6:43 pm
by dr beep
1024MAK wrote: Tue Sep 24, 2019 2:45 pm Hi Mozartkügel.

Welcome to our forum :D

One thing that my friend above did not say, the standard internal amount of RAM in a ZX81 is just 1k bytes. However, this is just enough for some simple, but excellent and interesting games. You will be amazed what can be fitted in just 1024 bytes of RAM. And this internal RAM is capable of ‘hi-resolution’ graphics. If you have a look in the games section you will find lots of dr beep’s 1k games :D

You may also wish to introduce yourself in the Welcome area ;-)

Have fun :D


Mark
You beat me with your comment. Indeed in 1K hires is always possible and it only takes max 30 sec to load a 1K game.

Re: ZX81 Noob development questions

Posted: Wed Sep 25, 2019 12:39 pm
by Mozartkügel
Thanks guys!
1024MAK wrote: Tue Sep 24, 2019 2:45 pm One thing that my friend above did not say, the standard internal amount of RAM in a ZX81 is just 1k bytes. However, this is just enough for some simple, but excellent and interesting games. You will be amazed what can be fitted in just 1024 bytes of RAM. And this internal RAM is capable of ‘hi-resolution’ graphics. If you have a look in the games section you will find lots of dr beep’s 1k games :D
I will check out the games for sure. It's going to be interesting to see what's been achieved in only 1k. I haven't gotten into that myself yet since I've enjoyed using C on old computers (and postponing learning assembly properly because of too little free time), but I can really see the fun in trying to cram in different kinds of games in a small space like that. As a parallel I've seen that many Vic-20 enthusiasts seems to love creating games for the unexpanded Vic too.

Re: ZX81 Noob development questions

Posted: Sat Oct 19, 2019 9:27 pm
by Mozartkügel
Yay! I made a ZX81 mock up of my long term multi platform wip game project. I know it has hi-res modes but I really fell for the chunky character graphics mode. :mrgreen:

I wrote a blog about my current thoughts of the project over at AtariAge if someone would happen to be curious. It also has proper sized mock ups / screenshots:
https://atariage.com/forums/blogs/entry ... roduction/

ZX81 Mock up:
Baron Lovejoy ZX81 WBG.png
Baron Lovejoy ZX81 WBG.png (4.99 KiB) Viewed 5785 times
Current mock ups and a couple of screenshots:
Baron Lovejoy Versions 12.10.2019.png

Re: ZX81 Noob development questions

Posted: Thu Nov 07, 2019 9:06 pm
by marste
The ZX81 version came out really well despite being character b/w!! Compliments!
Anyway, as e.g. Prince of Persia was showing, fluid and realistic movements are even more important than pure graphics!