Attic 81's - My collection and attempts to repair

Discussions about Sinclair ZX80 and ZX81 Hardware
User avatar
mrtinb
Posts: 1298
Joined: Fri Nov 06, 2015 5:44 pm
Location: Denmark
Contact:

Re: Attic 81's - My collection and attempts to repair

Post by mrtinb »

It could be that your ram works perfectly, but loading can be a difficult task.

You might be lucky loading a short 1k program, but not when the program is bigger.
Martin
ZX81, Lambda 8300, Commodore 64, Mac G4 Cube
User avatar
1024MAK
Posts: 3351
Joined: Mon Sep 26, 2011 10:56 am
Location: Looking forward to summer in Somerset, UK...

Re: Attic 81's - My collection and attempts to repair

Post by 1024MAK »

sheddyian wrote: Mon Jan 11, 2021 1:26 pm I found this test program https://sinclairzxworld.com/viewtopic.php?t=2664

Here I compare the results this program tells me with the example shown in the post above :

Code: Select all


RANGE			ME		EXAMPLE
=============		===		========
0K TO 8K IS RAM		NO		NO
8K TO 16K IS RAM	NO		YES
16K TO 24K IS RAM	YES		YES
24K TO 32K IS RAM	YES		YES
32K TO 40K IS RAM	NO		YES
40K TO 48K IS RAM	NO		YES
48K TO 56K IS RAM	MIRROR/16K	MIRROR/16K
56K TO 64K IS RAM	MIRROR/24K	MIRROR/24K

MEMORY  FOR BASIC	16K		16K

PEEKing RAMTOP shows 32768, which I beleive indicates the ZX81 thinks it has 16K.
Your results are correct for the normal 16k byte upgrade.

In a ZX81 that has an internal 16K byte upgrade or an external 16K RAM pack fitted, it has the following memory map:
0K TO 8K - 8K of ROM
8K TO 16K - MIRROR of the ROM (in the 0K TO 8K area)
16K TO 32K - 32K of RAM
32K TO 48K - MIRROR of the ROM (in the 0K TO 8K area)
48K TO 64K - MIRROR of the RAM (in the 16K TO 32K area) - used for the screen generation.

The mirrors are real memory as far as the Z80 is concerned, but there is only 8K bytes of ROM and with a machine that has been upgraded to 16K bytes of RAM, only 16K bytes of RAM. The mirrors are just the Z80 seeing the SAME memory chip in more than one part of it’s 64K byte address range. This is due to Sinclair only using partial decoding. See this topic for more on this.
sheddyian wrote: Mon Jan 11, 2021 1:26 pmIs there a different/better memory test program that perhaps POKEs and PEEKs all/most available locations to see what is available and detects faults or incompetent wiring by 3rd parties (ie, me)
Maybe you should instead post up some photos showing the work on your board that you have done?

I suspect this is more a problem with the audio level not being quite right rather than a RAM fault.

Mark
User avatar
1024MAK
Posts: 3351
Joined: Mon Sep 26, 2011 10:56 am
Location: Looking forward to summer in Somerset, UK...

Re: Attic 81's - My collection and attempts to repair

Post by 1024MAK »

Here is a simple program to test a machine that has 16k bytes of RAM:
16k RAM test program using DIM
16k RAM test program using DIM
16k RAM test program using DIM

Please note that when this is run, the screen will immediately go black/blank. It takes about one minute to run on a 50Hz ZX81.

Mark
sheddyian
Posts: 42
Joined: Sun Nov 15, 2020 12:53 pm
Contact:

Re: Attic 81's - My collection and attempts to repair

Post by sheddyian »

mrtinb wrote: Mon Jan 11, 2021 1:45 pm It could be that your ram works perfectly, but loading can be a difficult task.

You might be lucky loading a short 1k program, but not when the program is bigger.
It doesn't feel like a tape loading error as such, because 1K or 2K programs were (and still are) loading successfully. The 4K maze game also loads without problem.

Whereas the larger 16K games (10000 - 12000 bytes ish) fail within 1 second of playing the audio into the ZX81.

Something isn't right.

Ian
User avatar
mrtinb
Posts: 1298
Joined: Fri Nov 06, 2015 5:44 pm
Location: Denmark
Contact:

Re: Attic 81's - My collection and attempts to repair

Post by mrtinb »

Good observations. Follow Mark's advise and try his small program.
Martin
ZX81, Lambda 8300, Commodore 64, Mac G4 Cube
sheddyian
Posts: 42
Joined: Sun Nov 15, 2020 12:53 pm
Contact:

Re: Attic 81's - My collection and attempts to repair

Post by sheddyian »

1024MAK wrote: Mon Jan 11, 2021 3:12 pm Your results are correct for the normal 16k byte upgrade.
Thanks for confirming that. I did once know a bit about the ZX81 memory layout, but that was a long time back!
Maybe you should instead post up some photos showing the work on your board that you have done?
I was almost too ashamed as it looked so sloppy :oops: But I've reworked it while checking for electrically bad connections, and it's marginally improved now. :D I've again checked it for shorts and continuity where appropriate, and all seems ok. But have I goofed with the wiring somewhere?
IMG_20210111_205802.jpg
I suspect this is more a problem with the audio level not being quite right rather than a RAM fault.
It's the consistency of success with 1-4K programs, and consistency at failure within 1 second of attempting to load 16K programs that makes me doubt that it's levels.

I did try adjusting the levels, turned it down a bit to nearer 50%. 1K still loads fine, 16K still fails. Turned up to 95% - same problem.

Hopefully you'll spot I've put a wire in the wrong place and I can correct it, hiding my embarrassment behind glee that it's now able to load 3D monster maze :lol:

Thanks

Ian
sheddyian
Posts: 42
Joined: Sun Nov 15, 2020 12:53 pm
Contact:

Re: Attic 81's - My collection and attempts to repair

Post by sheddyian »

1024MAK wrote: Mon Jan 11, 2021 4:11 pm Here is a simple program to test a machine that has 16k bytes of RAM:
16k RAM test program using DIM

Please note that when this is run, the screen will immediately go black/blank. It takes about one minute to run on a 50Hz ZX81.

Mark
Damn, I wanted that to fail to be consistent with my expectations of dodgy RAM. And it finished and passed the test OK

Now more confused.

Ian
sheddyian
Posts: 42
Joined: Sun Nov 15, 2020 12:53 pm
Contact:

Re: Attic 81's - My collection and attempts to repair

Post by sheddyian »

OK.. think I've found the fault.

It is tape loading related.. but not levels.

Just listened to the audio when playing the larger .p files via JAVA tapeutils program on the Linux laptop - and there's gaps in it. This wheezy laptop seems to be struggling to give continuous sound output for the larger files.

It is a very wheezy old laptop...

What programs can folks here recommend for loading .p files into a real ZX81?

Meanwhile, I'm going to tinker a bit and see if I can stop tapeutils from stuttering...

Thanks

Ian
User avatar
Paul
Posts: 1123
Joined: Thu May 27, 2010 8:15 am
Location: Germanys west end

Re: Attic 81's - My collection and attempts to repair

Post by Paul »

I know its not Programs but there are very convient results using ZXWESPI from the german ZX-Team.
It's very easy to install (only 4 wires to zeddy) and cheap and powerful.
Maybe thats better than involving x86 based conversions....
In theory, there is no difference between theory and practice. But, in practice, there is.
Moggy
Posts: 2193
Joined: Wed Jun 18, 2008 2:00 pm

Re: Attic 81's - My collection and attempts to repair

Post by Moggy »

I'm not really into tape loading but if you are just wanting to play a WAV file then the audio manipulation program Audacity may be of use and can be found in the Linux repository. On the very rare occasions I have had to convert a P to WAV I use WinTZX which is a Win 32 program unfortunately but a whole lot simpler than messing around with Java,requiring only the loading of the file then one button press later instant WAV.

If you are interested I can post the program here.

Another thought that occurs to me is that for just playing a WAV out of your laptop than have you tried just simply using the Linux equivalent of media player which I'm sure you have installed?
After all the file you are playing is a simple audio one and media player doesn't have the overhead of running a Java routine in the back ground.


I have an old note book with a very slow Intel Atom CPU and have no trouble playing sound files at a constant rate and as the java program you are using has been around for some time I would have thought that even the crudest of laptops should run it. If not then an audio player of the types mention above should be used.

Can I also say it is possible the "gaps" as you call them could actually be in the files themselves, introduced when converted from P to WAV and that your slow laptop is having problems with the conversion rather than playing of files.

There is another convertor called PnO2WAV for Win32 created by Sir morris late of this forum which is a simple drag and drop affair for both P and O files and not the usual archaic command line faff around but unfortunately the WAV produced is at too high a rate to load directly into the ZX81 and has to be converted from 44100khz to 22050khz then saved using something like Audacity but at least a decent WAV is produced and have attached here for you to try if you have a Win32 laptop.

At the end of the day this is a simple problem which should have a simple solution rather than buying extra hardware or introducing unnecessary complication , for example if I want to load a ROM file in the form of a WAV created by WinTZX into my Spectrum for my EPROM programmer I just use a suitable lead from the EAR socket of the laptop into the spectrum, play the file using media player and have no trouble what so ever.
Attachments
PnO2Wav.zip
(12.34 KiB) Downloaded 6 times
Post Reply