utz wrote:

Anyway, the main reason you'll see bit 3 being used is because it costs additional cycles to mask it out.

I see. I thought that the 3rd bit is set for reason because I failed to comprehend what's happening in the engine from the readPtn label and up to the playNote.

utz wrote:

Haha, no, I can't take any credit for that discovery, you figured that out by yourself!

Thankies! Tho I won't be able to make it without the test track you've made ^~^

As utz and I figured out, behaviour for MIC and EAR ports on the ZX Spectrum 128k +3 with Amstrad 40077 Gate Array produces completely different output in comparison to a classic Speccy.

For the Speccy, values: 00, 01, 10, 11 of bits 4 and 3 produces 0.39, 073, 3.66, and 3.79 volts respectively.
For the +3 however, values: 00, 01, 10, and 11 would produce ~0, ~5, ~0, and ~5 volts, so the result level is driven by (bit4 & bit3).

So the question is: what is the reason for using all 4 levels (both MIC and EAR bits)?


(19 replies, posted in Sinclair)

So yeah, I added

    and #f7 ;11110111b MIC output makes weird noise on +3 

before every time it writes to the port and it now sounds pretty normal (but slow, as I obvs messed up with timings).


(19 replies, posted in Sinclair)

It feels like I have an idea what is happening with 1bit trackers on +3

The ULA chip uses the same pin (28) for all of the MIC socket, EAR socket and the internal speaker, so bits 3 and 4 of an OUT to Port 0xfe will affect bit 6 as read by an IN from Port 0xfe.

tl;dr on a classic speccy different values on bits 3 and 4 produces 4 different distinct levels. However, 1) MIC and EAR are separate lines on the +3 Amstrad Gate Array.

Bit 6 of Port 0xfe of the +2A/+3 does not show the same dependence on what was written to Port 0xfe as it does on the other machines, and always returns 0 if there is no signal.

2) there is no logic for +3 in fuse, that's why it works there.


(19 replies, posted in Sinclair)

Could it be the other way around (twice faster), because 48K plays the tone ~480Hz tone, while +3 plays ~970Hz?

(updated the attach so the pulses are aligned, wonder why there is the step on the 48K one on the bottom in the middle of the pulse)


(19 replies, posted in Sinclair)

Here the results: a screen capture and a scope.


(19 replies, posted in Sinclair)

@utz you've missed the attach.

I'll try to involve @noelsretrolab as he probably has plenty of it.


(19 replies, posted in Sinclair)

Sounds exactly the same :< Here's .asm. It still produces extra pulses every 20us like on the pulse.png from the drive.


(19 replies, posted in Sinclair)

Here is how it sounds on +3 and on 48k Issue 2

There are a tap file, a recording, and screenshots from scope.

if you see the attached image (+3 on top and in yellow), it seems like +3 sends extra pulse every time.


Shiru wrote:

A guy

A girl ;_;