Page 1 of 2

First zeddy boots but....

Posted: Sat Dec 23, 2023 5:01 pm
by msknight
OK - I was in luck. There was a special parcel delivery from a station other than my local office but.... I have the RGB-HDMI and it's configured and I boot fine on the issue 3 board.

Two problems and a question....

Firstly, the tape loader doesn't work...well, it does but I think my mobile phone isn't putting out enough power... or more likely some component likely needs replacing, or sensitivity is off.

The test program... with the mobile phone on full headphone volume, returns the occasional 128 in a string of 0. Lets say, 1 in 10. So it seems like connectivity is working, but either the zeddy has lost sensitivity, or else modern equipment that we have laying around just can't put out enough power. I thought I'd ask here first.

Secondly... I have a Panda 16k module (I wanted to test the system before I took the soldering iron to it again)... and the print poke tests return 17408 instead of the 32768 that would be expected for an internal 16k module expansion. Is that because it's an external module and everything's fine... or do I have a problem that needs to be troubleshot? There is a red LED on the Panda case, but it's not lit. I have, obviously, tried to clean the edge contacts, etc.

Thirdly, picture attached of the links on the right side of the memory. This isn't a straightforward jumper, so I'm wondering what I should do when it comes to fitting internal memory please.
IMG_7690.jpg

Re: First zeddy boots but....

Posted: Sat Dec 23, 2023 5:11 pm
by msknight
In case it helps, I thought I'd put a picture of the motherboard in... maybe the forum will take it, maybe it won't....

Re: First zeddy boots but....

Posted: Sat Dec 23, 2023 6:00 pm
by msknight
OK - I think the memory is an issue with the Panda memory module. I did get it to show a red LED, but the Zeddy won't give a K prompt. Need to look into that.

Further reading - there are these bluetooth modules that seem to have the necessary amplification on board, but the githubs are in chinese and I'm not sure where to go - https://www.youtube.com/watch?v=B8DWRI7I9TI

Re: First zeddy boots but....

Posted: Sat Dec 23, 2023 6:12 pm
by 1024MAK
Yes, the Sinclair computers (ZX80, ZX81 etc,) are rather insensitive when it comes to the Ear tape inputs. Modern devices often are unable to produce enough volume. Also, the mono sockets will only work with a mono plug. But the socket on a modern stereo device is unsuitable for a mono plug...

I go into a bit if detail about how the ZX81 memory map works here.

It makes no difference to the Z80 if the RAM is internal or external. There is a problem with your Panda 16k module.

PRINT PEEK 16388+256*PEEK 16389
Gives RAMTOP

If RAMTOP returns 17408 there is only 1K bytes of RAM as far as the ROM is concerned

As the LED is not lit, I suspect it's not getting a +5V supply. The +5V supply is also used to feed back to the main board via /RAMCS to disable the internal ZX81 SRAM chip. Yes, the external RAM pack has to drive /RAMCS high.

LK2 needs to be a wire link (between the middle hole/pad and the hole/pad marked LK2). LK2 connects address line A10.

Mark

Re: First zeddy boots but....

Posted: Sat Dec 23, 2023 10:59 pm
by msknight
Thanks. I'll read up on the RAM. Sounds like an internal RAM expansion will solve that one.

How do people usually get around the volume issue? I mean... so far I'm reading about people getting tape drives and using those, but after seeing those bluetooth receivers, there seems to be an easier way to do it?

Re: First zeddy boots but....

Posted: Sat Dec 23, 2023 11:11 pm
by mrtinb
I have several storage options. But if you have an Arduino, you just upload the firmware for TZXduino, and connect the output pin for Ear to the ZX81. That pulses 5V to the ZX81 from an SD card. That works flawlessly. So find anything that can send outputs that pulses from 0V and 5V. It needs to be this high to work.

Re: First zeddy boots but....

Posted: Sat Dec 23, 2023 11:17 pm
by 1024MAK
How the volume level is solved depends...

Possible solutions include, but are not limited to:
  • Audio amplifier, (either some PC mains powered speakers that have a headphone output socket, or a cheap amplifier from eBay),
  • Signal level booster and shaper, there is a design on these forums, but that's a fair amount of work,
  • Using a device that outputs 5V CMOS logic levels.
Some have experimented with inverting the stereo signal on a PC using editing software, then wiring up the left and right channels of the audio device to go to the ZX computer (the audio source ground/0V is left disconnected).

Depends on the route you want to take.

Mark

Re: First zeddy boots but....

Posted: Sun Dec 24, 2023 8:07 am
by msknight
I have one shot at the audio which is an xXDuo portable player which has a line out. We'll see how that does. Failing that, I think the best way forward will be the TZXduino because my electronics skills are actually quite low. I can solder, etc. and follow basic plans, but when it comes to the complicated stuff you guys are doing, I'm in over my head.

Talking about electronics, I've been looking at various solutions/circuits to the 32k RAM installation and I'd be grateful for advice on which one you think I should follow please, as some of these are involving diodes and I'm not sure which ones of those to source.

Re: First zeddy boots but....

Posted: Sun Dec 24, 2023 10:23 am
by 1024MAK
The "basic" internal expansion to provide 16K bytes of RAM just requires a DIL/DIP socket and a 32K byte SRAM chip (assuming there are no timing problems as seen with some modern fast CMOS SRAM chips). Note a 32K byte chip is used because 16K byte chips were not easily available.

If you want to go for 32K bytes of internal RAM, then extra circuitry is needed.

Normal ZX81 memory map:
0x0000 to 0x1FFF, 0 to 8191 - ROM
0x2000 to 0x3FFF, 8192 - 16383 - shadow/echo of the ROM
0x4000 to 0x7FFF, 16384 - 32767 - RAM
0x8000 to 0x9FFF, 32768 - 40959 - shadow/echo of the ROM
0xA000 to 0xBFFF, 40960 - 49151 - shadow/echo of the ROM
0xC000 to 0xFFFF, 49152 - 65535 - shadow/echo of the RAM, used by the hardware to produce the display

The above may look complicated, but actually, it's just the 64K address space divided into four. It's the partial address decoding that makes it look more complicated.

As you can see, as standard, there is no available space for any more memory. So, if more than 16K bytes of RAM is wanted, extra circuitry is needed to provide additional address decoding. The easiest and most simple design puts the additional 16K between 0xC000 to 0xFFFF, 49152 - 65535, but this area can only be used for storing data. It's not possible to run machine code from this area. BASIC also cannot use this area directly (other than by using PEEK and POKE).

Next up in terms of complexity, is to use either the 0x2000 to 0x3FFF, 8192 - 16383 and/or the 0x8000 to 0xBFFF, 32768 - 49151 area.

Another option (although not cheap) would be to use a vLA81 (replacement module for the ULA) which includes the extra circuity/functions as standard, you just need to fit a 32K byte SRAM chip and some extra wires.

The other important point, is what are you going to use your machine for? Nearly all commercial games were designed for a ZX81 with no more than 16K bytes of RAM.

Which scheme/design are you looking at?

Mark

Re: First zeddy boots but....

Posted: Sun Dec 24, 2023 10:35 am
by mrtinb
If you don’t want to soldier you can get this modern external RAM board:

https://www.ebay.co.uk/itm/116017640518