ZX81 Motherboard
Re: ZX81 Motherboard
I suppose one way of truely finding out is to dump the ROM in one of these machines and see if it's any different to other ZX81 ROMs. Obviously it'd need to be read in a programmer and not just via the ZX81, else we'd see the effects of the patch too.
Mike
Mike
-
- Posts: 7
- Joined: Fri Jun 27, 2008 12:58 am
Re: ZX81 Motherboard
Actually, that's a very good point Mike. Yes, you're quite right - if you wanted to hack a couple of bits here or there at a certain address, you'd do it on the ROM not the CPU.Mike wrote:sorry, I still don't buy it... I might be wrong here, but due to the split bus design of the '81, I'd expect any "patch" to be soldered on top of the ROM or ULA, not the Z80 which see the "other" bus to that which the ROM is on.
Mike
Not knowing anything about the split bus (or the ZX81 hardware at all, for that matter) I guess I should really shut up! Still, it's fun theorising

Mark
Re: ZX81 Motherboard
Maybe that logic? We had a discussion about that in the ZX-Team magazine 2 and 3 in 2002.Mark Wills wrote: My guess is they are using the logic to detect a certain address in the ROM, and changing a few bits on the data bus to write a new opcode out on the bus, thus changing one single instruction. Very clever fix. I guess since the ROMS are special custom chips, not just EEPROMS, it was too expensive to throw them away. Those guys were damn clever.
Mark
Siggi
My ZX81 web-server: online since 2007, running since dec. 2020 using ZeddyNet hardware
http://zx81.ddns.net/ZxTeaM
http://zx81.ddns.net/ZxTeaM
-
- Posts: 7
- Joined: Fri Jun 27, 2008 12:58 am
Re: ZX81 Motherboard
Wow!
So it looks like they were doing exactly what I said: Using logic to change the op-code for a certain address. Those are all AND gates, yes?
I know some Z80, but I don't know the op-codes
But I would imagine you'd only need to change one bit, to go from, say INC B to INC C (for example).
Mark
So it looks like they were doing exactly what I said: Using logic to change the op-code for a certain address. Those are all AND gates, yes?
I know some Z80, but I don't know the op-codes

Mark
Re: ZX81 Motherboard
The upper 3 gates are NOR gates, the lower NAND.
The logic gets only active during opcode-fetch cycles, so /M1 is low. The ouput is (AFAIK) an open collector and thus may only pull down the data line D6. That is only possible at the Z80 side of the "isolating" resistors in the data lines between the Z80 and the rom. Otherwise (if the logic would be installed at the rom side) the D6 output of the rom would be shortcut to ground and the rom could be destroyed.
Siggi
The logic gets only active during opcode-fetch cycles, so /M1 is low. The ouput is (AFAIK) an open collector and thus may only pull down the data line D6. That is only possible at the Z80 side of the "isolating" resistors in the data lines between the Z80 and the rom. Otherwise (if the logic would be installed at the rom side) the D6 output of the rom would be shortcut to ground and the rom could be destroyed.
Siggi
My ZX81 web-server: online since 2007, running since dec. 2020 using ZeddyNet hardware
http://zx81.ddns.net/ZxTeaM
http://zx81.ddns.net/ZxTeaM
Re: ZX81 Motherboard
Hi all
hope this extract from Ian Logan's book understanding your zx81 rom can shed some light on the add on fitted to motherboard. He describes various differences between old and new roms and how a few old roms are fitted with the add on to correct arithmatic errors caused by just three bytes of code!
......." and most importantly the three troublesome 'extra' bytes at 1733-1735 hex.That lead to to the arithmatic error are simply deleted" .... This is new rom
...."Although it is as yet uncomfirmed by Sinclair, it would appear that the hardware add on corrects the arithmatic on some of the old 8k roms by nulliying the effect of the three bytes'.
Probably when the location 1735 hex is addressed the insruction fetched is ld H,A but the instruction passed to the z80 is DAA".
Hope this is of use Moggy
hope this extract from Ian Logan's book understanding your zx81 rom can shed some light on the add on fitted to motherboard. He describes various differences between old and new roms and how a few old roms are fitted with the add on to correct arithmatic errors caused by just three bytes of code!
......." and most importantly the three troublesome 'extra' bytes at 1733-1735 hex.That lead to to the arithmatic error are simply deleted" .... This is new rom
...."Although it is as yet uncomfirmed by Sinclair, it would appear that the hardware add on corrects the arithmatic on some of the old 8k roms by nulliying the effect of the three bytes'.
Probably when the location 1735 hex is addressed the insruction fetched is ld H,A but the instruction passed to the z80 is DAA".
Hope this is of use Moggy
???????????????????????????PIINKEY$?????RND????????????????????????????????????????????????????????PI????????
-
- Posts: 7
- Joined: Fri Jun 27, 2008 12:58 am
Re: ZX81 Motherboard
Thats very cool Moggy. Thanks for posting. I'll post a good photo of the mod in the next couple of days 
Mark

Mark
Re: ZX81 Motherboard
Glad to help mark, I had heard of modded roms before but always thought they were somebodies "home brew" efforts. It would seem you have quite a rarity there. Also there was a story about a non production rom which was made which had the data-read-restore features found later on the spectrum, but had to be left out of the production versions to accomodate the zeddies print routines.
Regards Moggy
Regards Moggy
???????????????????????????PIINKEY$?????RND????????????????????????????????????????????????????????PI????????
-
- Posts: 7
- Joined: Fri Jun 27, 2008 12:58 am
Re: ZX81 Motherboard
Ok, here are the piccies of the board. I took these with a phone camera, but if anyone wants better pics please let me know and I will use a 'real' camera 




As you can see, it's an issue 1 (1980) board.
Mark





As you can see, it's an issue 1 (1980) board.
Mark
Re: ZX81 Motherboard
Hi folks,
I hope people notice old topics. I have picked up a similar ZX81 which says it's an issue 1 from 1980 with a ULA that's only got a date on it: 8119, 19th Week of 1981 (roughly April 13th).
http://www.flickr.com/photos/87583564@N00/13193120623/
Again this ZX81 has the SN74LS12N + SN74LS27N mod. My guess is that the ULA is a pre-production one, that Sinclair would have had a number made as part of a pre-production run.
There doesn't appear to be anything visually wrong with the machine and it did work; however, connecting it up to a 1990s colour TV doesn't reveal a picture. Something is happening though; with the unit unplugged the image is noise and with it plugged in, the image is black. Slightly detuning the channel leads to sets of regular stripes which implies to me that HSync is being generated.
I understand these types of ZX81s are pretty rare?
-cheers from Julz
I hope people notice old topics. I have picked up a similar ZX81 which says it's an issue 1 from 1980 with a ULA that's only got a date on it: 8119, 19th Week of 1981 (roughly April 13th).
http://www.flickr.com/photos/87583564@N00/13193120623/
Again this ZX81 has the SN74LS12N + SN74LS27N mod. My guess is that the ULA is a pre-production one, that Sinclair would have had a number made as part of a pre-production run.
There doesn't appear to be anything visually wrong with the machine and it did work; however, connecting it up to a 1990s colour TV doesn't reveal a picture. Something is happening though; with the unit unplugged the image is noise and with it plugged in, the image is black. Slightly detuning the channel leads to sets of regular stripes which implies to me that HSync is being generated.
I understand these types of ZX81s are pretty rare?
-cheers from Julz
Last edited by 1024MAK on Sat Aug 25, 2018 2:52 pm, edited 1 time in total.
Reason: Link to photo edited
Reason: Link to photo edited