Is the sound we hear on the audiotape generated by the Soundchip ?
Could Lars´s CTC be bad, I heard it was common to be bad, I never saw any CTC problems on my Memotech computer.
Sound and LOAD issues
Re: Sound and LOAD issues
//CLAUS - Webmaster at www.mtxworld.dk
Re: Sound and LOAD issues
I would assume that the sound output coming from the speakers when loading a game is coming from the sound chip. But I haven't much knowledge about it, so it's just an assumption. What is the CTC?
I'm gonna do some more troubleshooting when I get the IC's I ordered. I actually have no reason to believe the data loading won't work. It could well be that I concluded that too quickly when hearing the constant tone, and just assumed it was broken. But I did use a stereo jack, so it might aswell be that.
I'm really looking forward to getting those IC's, get a socket on there and add it, to see if that fixes the problem with the sound. Then I'm on to the data loading afterwards.
I'm gonna do some more troubleshooting when I get the IC's I ordered. I actually have no reason to believe the data loading won't work. It could well be that I concluded that too quickly when hearing the constant tone, and just assumed it was broken. But I did use a stereo jack, so it might aswell be that.
I'm really looking forward to getting those IC's, get a socket on there and add it, to see if that fixes the problem with the sound. Then I'm on to the data loading afterwards.

Re: Sound and LOAD issues
The CTC is a Zilog timing, clock and interrupt chip. It is used to generate the timing for various internal functions. The MTX also uses it to generate interrupts to the Z80 CPU. Both to provide regular timing signals for software. And so that the ROM code can read data from the cassette tape input (the Ear socket).
Mark
Mark


“There are four lights!”
Step up to red alert. Sir, are you absolutely sure? It does mean changing the bulb

Autumn is here. Bye bye summer 2024...
Not as many MTXs as Dave!

Re: Sound and LOAD issues
If the sound chip does not receive any data from the CPU, it’s internal registers contain garbage data at power-up. So it generates an annoying constant “tone”.
So in your case, either the sound chip is faulty, one of the chips that form the control logic for it is faulty, the data register (latch) that supplies it with data is faulty, there is a dry / poor solder joint in one of the above circuits, poor contact of a chip pin in a socket or a broken electrical connection.
If it helps, later in the week, when I have more time, I can guide you with more details on fault finding.
Mark
So in your case, either the sound chip is faulty, one of the chips that form the control logic for it is faulty, the data register (latch) that supplies it with data is faulty, there is a dry / poor solder joint in one of the above circuits, poor contact of a chip pin in a socket or a broken electrical connection.
If it helps, later in the week, when I have more time, I can guide you with more details on fault finding.
Mark


“There are four lights!”
Step up to red alert. Sir, are you absolutely sure? It does mean changing the bulb

Autumn is here. Bye bye summer 2024...
Not as many MTXs as Dave!

Re: Sound and LOAD issues
That is some very interesting insight. Thanks! I seem to recall this tone being there and I could still load games (It's been years since it started appearing I just haven't looked into it until now). So with that in mind, it does seem that it is either the sound chip or the support chips. I should be getting the octal flip-flops tomorrow. And that mono jack should be able tell me whether I can load data or not. I don't have it yet though and it might be a while before I get my hands on one as I am quite busy at work at the moment so there's not much time to go jack shopping.
Quickl question: If the CTC is bad, would I still be able to write and run a BASIC program on it?
Quickl question: If the CTC is bad, would I still be able to write and run a BASIC program on it?
Re: Sound and LOAD issues
You can run Basic without a CTC, however the bits that use interrupts wouldn't work or would work differently.
Meaning no flashing cursor and the break key wouldn't work, so no stopping run-away programs.
Panel would most likely be limited too, single stepping relies on interrupts.
Meaning no flashing cursor and the break key wouldn't work, so no stopping run-away programs.
Panel would most likely be limited too, single stepping relies on interrupts.
Re: Sound and LOAD issues
Interesting, those things are easy to check. Thanks!
Re: Sound and LOAD issues
So I got a chance to do a bit more testing today. I hooked up my MTX512 to the monitor and hi-fi connections and got a great picture on my TV. The constant tone and a very high pitched tone is still there. I tried the <CTRL><G> combination but I didn't get a bell sound. If you guys have any input in regards to that when it comes to swapping the octal flip-flop that sits beside the sound chip, please let me know.
I also got the SN74HCT374N but natually I seem to have ordered the wrong IC socket, so that will have to wait till another day.
Lastly, the CTC seems to be all right. I get a blinking cursor and I can break a running program with the break key.
I also got the SN74HCT374N but natually I seem to have ordered the wrong IC socket, so that will have to wait till another day.
Lastly, the CTC seems to be all right. I get a blinking cursor and I can break a running program with the break key.
Re: Sound and LOAD issues
I had a look at the ROM code for the tap interface, the tape sounds are created by a call to "blip" with each bit transferred. The actual tape transfer is done via the CTC interrupt flipping the C flag to load. Or the output routine toggling the flip flop attached to OUT(3). As far as I can see, a faulty sound chip shouldn't stop the tape from loading or saving.
Code: Select all
;start of cassette interface
.toggle
0A53 3F CCF
0A54 FB EI
0A55 ED 4D RETI
.blip
0A57 DB 06 IN A,(&06)
0A59 CB 47 BIT 0,A
0A5B 20 05 JR NZ,blip2
0A5D CD 06 0B CALL resint
0A60 EF RST &28 ; Utility routine
0A61 3E DB &3E ; Generate error no 62
.blip2
0A62 08 EX AF,AF'
0A63 EE 0F XOR &0F
0A65 D3 06 OUT (&06),A
0A67 08 EX AF,AF'
0A68 DB 03 IN A,(&03)
0A6A C9 RET
.inbit
0A6B CD 57 0A CALL blip
0A6E FB EI
0A6F AF XOR A
.inbit1
0A70 30 FE JR NC,inbit1
.inbit2
0A72 3D DEC A
0A73 DA 72 0A JP C,inbit2
0A76 F3 DI
0A77 DD BE 00 CP (IX+&00)
0A7A C9 RET
.outbit
0A7B CD 57 0A CALL blip
0A7E 3E 00 LD A,&00
0A80 38 0A JR C,bhigh
.blow
0A82 30 FE JR NC,blow
0A84 D3 03 OUT (&03),A
.blow1
0A86 38 FE JR C,blow1
0A88 3C INC A
0A89 D3 03 OUT (&03),A
0A8B C9 RET
.bhigh
0A8C 38 FE JR C,bhigh
.bhigh1
0A8E 30 FE JR NC,bhigh1
0A90 D3 03 OUT (&03),A
.bhigh2
0A92 38 FE JR C,bhigh2
.bhigh3
0A94 30 FE JR NC,bhigh3
0A96 3C INC A
0A97 D3 03 OUT (&03),A
0A99 C9 RET
.inbyte
0A9A 06 08 LD B,&08
.inby1
0A9C CD 6B 0A CALL inbit
0A9F CB 19 RR C
0AA1 10 F9 DJNZ inby1
0AA3 C9 RET
.outbyte
0AA4 06 08 LD B,&08
.outby1
0AA6 CB 19 RR C
0AA8 CD 7B 0A CALL outbit
0AAB 10 F9 DJNZ outby1
0AAD C9 RET
.inout
0AAE 7A LD A,D
0AAF B3 OR E
0AB0 C8 RET Z
0AB1 CD 10 0B CALL setint
0AB4 08 EX AF,AF'
0AB5 3E 90 LD A,&90
0AB7 08 EX AF,AF'
0AB8 28 2C JR Z,outblock
.inblock
0ABA 06 00 LD B,&00
.inblk1
0ABC CD 6B 0A CALL inbit
0ABF 38 F9 JR C,inblock
0AC1 10 F9 DJNZ inblk1
.stbit
0AC3 FB EI
0AC4 AF XOR A
0AC5 3F CCF
0AC6 CD 72 0A CALL inbit2
0AC9 30 F8 JR NC,stbit
.inblk2
0ACB CD 9A 0A CALL inbyte
0ACE 3A 67 FD LD A,(VERIF)
0AD1 A7 AND A
0AD2 28 09 JR Z,inblk3
0AD4 7E LD A,(HL)
0AD5 B9 CP C
0AD6 28 06 JR Z,inblk4
0AD8 CD 06 0B CALL resint
0ADB EF RST &28 ; Utility routine
0ADC 0B DB &0B ; Generate error no 11
.inblk3
0ADD 71 LD (HL),C
.inblk4
0ADE 23 INC HL
0ADF 1B DEC DE
0AE0 7A LD A,D
0AE1 B3 OR E
0AE2 20 E7 JR NZ,inblk2
0AE4 18 20 JR resint
.outblock
0AE6 01 DC 05 LD BC,&05DC ;delay =1500
.otblk1
0AE9 AF XOR A
0AEA CD 82 0A CALL blow
0AED 0B DEC BC
0AEE 78 LD A,B
0AEF B1 OR C
0AF0 20 F7 JR NZ,otblk1
.del1
0AF2 30 FE JR NC,del1
0AF4 D3 03 OUT (&03),A
.del2
0AF6 38 FE JR C,del2
0AF8 3F CCF
0AF9 CD 92 0A CALL bhigh2
.otblk2
0AFC 4E LD C,(HL)
0AFD CD A4 0A CALL outbyte
0B00 23 INC HL
0B01 1B DEC DE
0B02 7A LD A,D
0B03 B3 OR E
0B04 20 F6 JR NZ,otblk2
.resint
0B06 CD 7F 09 CALL ijinit
0B09 3E 55 LD A,&55
0B0B D3 1F OUT (&1F),A
0B0D C3 96 09 JP init125
.setint
0B10 CD 7F 09 CALL ijinit
0B13 E5 PUSH HL
0B14 21 53 0A LD HL,toggle
0B17 22 F2 FF LD (IJTABLE+2),HL
0B1A 22 F6 FF LD (IJTABLE+6),HL
0B1D E1 POP HL
0B1E DD 21 60 FD LD IX,MIDVAL
0B22 3E FE LD A,&FE
0B24 D3 05 OUT (&05),A
0B26 3E AA LD A,&AA
0B28 D3 1F OUT (&1F),A
0B2A 0E 0B LD C,&0B
0B2C 06 C5 LD B,&C5
0B2E 3A 68 FD LD A,(TYPE)
0B31 A7 AND A
0B32 20 05 JR NZ,setin1
0B34 0E 09 LD C,&09
0B36 3A 5F FD LD A,(CASBAUD)
.setin1
0B39 ED 41 OUT (C),B
0B3B ED 79 OUT (C),A
0B3D FB EI
0B3E ED 4D RETI
;end of cassette interface
Re: Sound and LOAD issues
On that note, I hope to get the mono jack cable one of the coming days (I ordered one yesterday). With the information you just provided Martin, it seems it should then be able to load games even with the sound being faulty. And that does worry me a bit, because earlier today I actually managed to find a mono minijack to phono cable at work. From the phone I connected that to a female-female phono connector and plugged another phono into that which leads to a stereo mini jack which went to the MTX512's EAR (that messy setup is the best I could do with what I have right now). This should've worked as the mono jack in the phone should have directed sound into both of the stereo channels of the cable. Tried different volumes and EQ settings on the phone, but no luck. So right now I'm hoping it was a faulty cable and awaiting the actual mono jack to jack I ordered.