ZX81 rebuild

Discussions about Sinclair ZX80 and ZX81 Hardware
Moggy
Posts: 3267
Joined: Wed Jun 18, 2008 2:00 pm

Re: ZX81 rebuild

Post by Moggy »

kpalser wrote: Mon May 18, 2020 1:58 am I’ve been trying to contact David Husband to ask permission to use the Forth ROM in my emulator. I’m no longer sure who I should be asking. I’ve read the other threads in this group and the above replies regarding the offsets.

The fact that David / Skywave Software would have gone on to write Forth ROMs for the BBC micro and CPC without being challenged by the copyright seems odd.

But then on the other hand you have Bob Alsum / Tree Systems with his Pluri-Forth ROM, where he has in the past released the source code: https://www.timexsinclair.com/?s=Bob+Alsum and the ROM screen offsets seem better suited to NTSC.

Maybe one was licensed to the other. I’m going to try and contact both authors with the key aim to get permission to include the ROM but maybe also determine who did what.

Regarding the ROMs themselves there seems to have been suggestions that they may have been modified for EightyOne. But identical files are found in the beta distributions of Xtender 2 with file dates a good 5 years before the version history of Eightyone.
I was the one who suggest the ROM may have been altered based on the fact fact that Eighty One doesn't produce the display artefacts as posted earlier in the thread and at the time no-one could produce a genuine H4th EPROM for comparison as opposed to copies that seem to be derived from the emulator. In recent times that has been rectified as I found someone who did have the genuine article and indeed the emulator code matched the real thing C/W the aforementioned maths bug and display problems, so my conclusion was that Eighty One cures the Inverse right hand column display error in the same way that the new replacement ULAs do although no-one seems to have an explanation of how that is being achieved.

As for Husband not being challenged I can only assume he did it legally under licence as the original manual, as opposed to some online copies, openly credit Bob Alsum's work.
Regardless of the copyright message H4th displays the similarities to the US version are so marked that in my opinion (and I stress it's only my opinion) the UK version is something done under licence as opposed to totally original work. Compare the the two ROM images in Eighty One (H4th/Treeforth) if they are VASTLY different in every way then I happily withdraw the above.

It should be noted that Pluri-forth ,I believe, was previously known as Multi-forth and Tree-forth so you may want to search for the origins of that in regard to earliest incarnation/creator etc.

Who owns the rights to the IP contained within H4th?

It's now getting on for nearly forty years since its inception and things that were slated for production such as the floating point co-processor didn't see the light of day as far as I know so perhaps when added to the fact that Forth was seen by a majority as a dead language as it didn't lend itself to playing nice colourful games, which is what most people wanted to do rather than real computing, perhaps then the UK licence holders due to lack of interest let the licence lapse and therefore Bob Alsum or his descendants/employers whoever, are the IP owner.

Other than that ask any of the emulator authors or project developers on this forum or the German forum who have used the EPROM code in their works, how they went about seeking permission to use thirty odd year old code if indeed they did at all or perhaps check out the accompanying read me files for a given emulator or project that no doubt credits/acknowledges the various owners of the IP rights to ROM code contained therein.
Lardo Boffin
Posts: 2173
Joined: Sat Nov 26, 2016 2:42 am

Re: ZX81 rebuild

Post by Lardo Boffin »

Having pretty much finished the rebuild (!!!) by adding in the missing Ear socket I decided to do something about the case. Or lack of.

Here is attempt #1. It has a couple of issues which I will come to. I decided against making the ‘case’ big enough for a membrane keyboard as I would never use one on it.

1B25C3A6-7DE9-48AB-83FB-485D349E8F0F.jpeg

3643C923-4D99-4363-8BEE-5271DF4E50E1.jpeg

ZX81 feet.
8B9ABAD5-9EDE-4C17-8B7C-DCFD71D577B2.jpeg

The ZXpand is getting cosy with the keyboard buffer.
0FA94051-0FD3-45FF-B2DB-90C65227597D.jpeg

Issue 1 - what do I do with the switch for the ROM?

Issue 2 - there are two hole in the Perspex that correspond to the internal screw holes. Sadly my M3 spacers will not go through the PCB holes. Just a smidgen too tight! My options here are try and find M2.5 spacers or something involving an M3 drill bit. :shock: :? :?

I suspect the case may also be something of a H&S violation in terms of keeping fingers away from 5V so best hide it from the kids. :D
ZX80
ZX81 iss 1 (bugged ROM, kludge fix, normal, rebuilt)
TS 1000 iss 3, ZXPand AY and +, ZX8-CCB, ZX-KDLX & ChromaSCART
Tatung 81 + Wespi
TS 1500 & 2000
Spectrum 16k (iss 1 s/n 862)
Spectrum 48ks plus a DIVMMC future and SPECTRA
Moggy
Posts: 3267
Joined: Wed Jun 18, 2008 2:00 pm

Re: ZX81 rebuild

Post by Moggy »

Well done Lardo!!

From renovating zeddies to sell on you are now a full time modder. :ugeek:

It looks bloody lovely but please play with it and not put it in a glass cabinet. :lol:


Moggy.
Lardo Boffin
Posts: 2173
Joined: Sat Nov 26, 2016 2:42 am

Re: ZX81 rebuild

Post by Lardo Boffin »

Moggy wrote: Thu May 21, 2020 11:10 pm Well done Lardo!!

From renovating zeddies to sell on you are now a full time modder. :ugeek:

It looks bloody lovely but please play with it and not put it in a glass cabinet. :lol:


Moggy.
The coloured wires from the ROM switch give it an almost Spectrum like splash of colour which does look cool. 8-)

Learning Forth is on my to do list (after learning C# for work) so that should give me the incentive to use it. The only question being how do I load and save stuff with Husband Forth in place? I’m betting the ‘Spand won’t work.
ZX80
ZX81 iss 1 (bugged ROM, kludge fix, normal, rebuilt)
TS 1000 iss 3, ZXPand AY and +, ZX8-CCB, ZX-KDLX & ChromaSCART
Tatung 81 + Wespi
TS 1500 & 2000
Spectrum 16k (iss 1 s/n 862)
Spectrum 48ks plus a DIVMMC future and SPECTRA
User avatar
1024MAK
Posts: 5118
Joined: Mon Sep 26, 2011 10:56 am
Location: Looking forward to summer in Somerset, UK...

Re: ZX81 rebuild

Post by 1024MAK »

Lardo Boffin wrote: Thu May 21, 2020 10:30 pm Issue 1 - what do I do with the switch for the ROM?
Find a nice ‘panel’ type switch of the correct type and mount it on the case ;)
Lardo Boffin wrote: Thu May 21, 2020 10:30 pmIssue 2 - there are two hole in the Perspex that correspond to the internal screw holes. Sadly my M3 spacers will not go through the PCB holes. Just a smidgen too tight! My options here are try and find M2.5 spacers or something involving an M3 drill bit. :shock: :? :?
M2 and M2.5 hardware does exist, it’s just a lot harder to find. So you will have to do a lot of searching...
Lardo Boffin wrote: Thu May 21, 2020 10:30 pmI suspect the case may also be something of a H&S violation in terms of keeping fingers away from 5V so best hide it from the kids. :D
5V is ‘extra low voltage’ so being able to touch it (even for children) is not in itself a H&S problem (as long as the mains PSU is a proper double insulated and fully isolated type, the Sinclair PSUs do meet this standard).
While supervised, you could teach them a little about about electricity and what an electric shock feels like. They can experience a (safe) electric shock by very briefly putting their tongue across the terminals of a 9V PP3 / 6F22 battery.

Mark
ZX81 Variations
ZX81 Chip Pin-outs
ZX81 Video Transistor Buffer Amp

:!: Standby alert :!:
There are four lights!
Step up to red alert. Sir, are you absolutely sure? It does mean changing the bulb :!:
Looking forward to summer later in the year.
Moggy
Posts: 3267
Joined: Wed Jun 18, 2008 2:00 pm

Re: ZX81 rebuild

Post by Moggy »

A few things regarding Forth.

If games playing/creation is your niche which is all that seems to interest most people rather than computing,then look for another language. The first thing a lot of people do when trying forth is to create the PLOT and LINE commands absent from most forths as it is basically a scientific language which has no need of them. I suspect they think it is an easier way into games creation than assembler.

Find your particular flavour and stick with it because for a so called standard language the various incarnations (Fig,Camel, Forth-79,83 and so on)don't mix very well, missing primitives (basic key words) , programs that run in one dialect not running in another, assembler routines from one Forth not working in another blah blah.

The program examples with say toddy whilst being very good are basically Jupiter Ace translations that rely very heavily on assembler to work so again whilst being most excellent in themselves they are ,in my opinion,not really forth and give a false impression of forths abilities and are unworkable I have found in H4th.

The idea of the assembler built into most forths is to add a bit of speed where needed or to create a word that's perhaps not possible with existing primitives, not be two thirds of the whole program or what's the point? you may as well do the whole thing in assembler..

The ZXpand will work with H4th(you need to know the magic formula :lol: ) But because the overlay ROM has to be switched out to gain access to H4ths character set, it is no more than a 32k rampack giving 31k to play with rather than the 15k when used with a standard memory pack. Also because the ROM is switched out you have to save to tape but as H4th uses a very high rate save/load routine the saved programs are very short hence a bit more reliable.

I stick with H4th because....

1) It's hardware based leaving more memory.

2) It has a built in editor so no need to faff about with other programs or PC based editors as everything's done in house.

3) It has a manual.

4) It can be used for multi-tasking controller use with suitable hardware.

5) It plays nicely with external keyboards. Try typing something at a normal typing speed with Toddy forth whilst using a Memotech keyboard and see how you get on.

6) Whilst it is primarily an 8 bit forth it is capable of 32 bit and a few 64 bit calculations which for the maths bods amongst us is quite useful.


Lastly it has a call to break during runtime, if you think that is not important then try getting out of a 30,000 iteration DO LOOP with other software forths during program testing and you will see what I mean
Lardo Boffin
Posts: 2173
Joined: Sat Nov 26, 2016 2:42 am

Re: ZX81 rebuild

Post by Lardo Boffin »

Moggy wrote: Fri May 22, 2020 1:14 pm A few things regarding Forth....
Thanks for the info Moggy!

I guess a lack of ‘runtime’ distribution would make games a non-starter without any other reasons.

Sadly I don’t own a working 32K RAM pack though I could risk retro fitting 32K internally to this zeddy but I’m not sure I am brave enough!!!
ZX80
ZX81 iss 1 (bugged ROM, kludge fix, normal, rebuilt)
TS 1000 iss 3, ZXPand AY and +, ZX8-CCB, ZX-KDLX & ChromaSCART
Tatung 81 + Wespi
TS 1500 & 2000
Spectrum 16k (iss 1 s/n 862)
Spectrum 48ks plus a DIVMMC future and SPECTRA
Moggy
Posts: 3267
Joined: Wed Jun 18, 2008 2:00 pm

Re: ZX81 rebuild

Post by Moggy »

Lardo Boffin wrote: Fri May 22, 2020 3:22 pm
Moggy wrote: Fri May 22, 2020 1:14 pm A few things regarding Forth....
Thanks for the info Moggy!

I guess a lack of ‘runtime’ distribution would make games a non-starter without any other reasons.

Sadly I don’t own a working 32K RAM pack though I could risk retro fitting 32K internally to this zeddy but I’m not sure I am brave enough!!!
That's why I use the spand to act as a 32k rampack. I do have a tiny code segment courtesy of Charlie to re-enable a switched out spand when using BASIC but don't have the brains to put it into use with forth! :oops:
Lardo Boffin
Posts: 2173
Joined: Sat Nov 26, 2016 2:42 am

Re: ZX81 rebuild

Post by Lardo Boffin »

Moggy wrote: Fri May 22, 2020 3:47 pm
Lardo Boffin wrote: Fri May 22, 2020 3:22 pm
Moggy wrote: Fri May 22, 2020 1:14 pm A few things regarding Forth....
Thanks for the info Moggy!

I guess a lack of ‘runtime’ distribution would make games a non-starter without any other reasons.

Sadly I don’t own a working 32K RAM pack though I could risk retro fitting 32K internally to this zeddy but I’m not sure I am brave enough!!!
That's why I use the spand to act as a 32k rampack. I do have a tiny code segment courtesy of Charlie to re-enable a switched out spand when using BASIC but don't have the brains to put it into use with forth! :oops:
I plugged the spand in and got this:

6BDC2E5C-2541-4B8D-8CDE-DEA4C3B5952C.jpeg

Do I need to change any settings?

Also by sheer coincidence this arrived today. I’m a sucker for buying language packs...

7835DA25-D065-4362-AC67-08BFC0775F55.jpeg
ZX80
ZX81 iss 1 (bugged ROM, kludge fix, normal, rebuilt)
TS 1000 iss 3, ZXPand AY and +, ZX8-CCB, ZX-KDLX & ChromaSCART
Tatung 81 + Wespi
TS 1500 & 2000
Spectrum 16k (iss 1 s/n 862)
Spectrum 48ks plus a DIVMMC future and SPECTRA
Moggy
Posts: 3267
Joined: Wed Jun 18, 2008 2:00 pm

Re: ZX81 rebuild

Post by Moggy »

Right Lardo.

Firstly whereas this used to work with old spands I have found that because of the various firmware up dates this is no longer the case but you can try it anyway if you have an older spand. No problems with the spand+

Boot up zeddy ( I see yours boots to commander as does mine) quit commander(SHIFT and Q together) then new it to get rid of it (not reset that only brings back commander)

Even though all you can see is garbage type and enter CONFIG"X"

At this point H4ths black flashing cursor should be at the top of the screen if so press SHIFT and SPACE together (H4ths reset keys) and you should be presented with the copyright message.

Type and enter MEM . (I think that's the command) and you should be presented with a report of about 31k free.

PS if and or when you have a play with that Artic forth please let me know if you can get the bloody editor screens to work, dammed if I can!
Post Reply