Fuller Box & Fuller Orator support

This is the place for general discussion and updates about the ZXDB Database. This forum is not specific to Spectrum Computing.

Moderator: druellan

Post Reply
User avatar
druellan
Dynamite Dan
Posts: 1475
Joined: Tue Apr 03, 2018 7:19 pm

Fuller Box & Fuller Orator support

Post by druellan »

Hi! I started working on this some time ago and decided to take the time and finish it.
Basically I did a string search for "fuller" to get all the games that has some kind of Fuller support. For now I ignored the games with just joystick support, and tested the titles to see if they have support for the AY chip and the Orator interface, with that I managed to conform an interesting list.

Must be other compatible games out there that have no mention of "fuller" in the code, or their strings encoded, also, not sure if a list of compatible games were published on some magazines, I need to check that.

https://docs.google.com/spreadsheets/d/ ... sp=sharing
✓ Reviewed
jimmy
Drutt
Posts: 35
Joined: Sun Nov 24, 2019 9:06 pm

Re: Fuller Box & Fuller Orator support

Post by jimmy »

Thank you for generating this list - I was aware of some special versions of games that used Fuller sound (such as Starbike), but I didn't know about Andy Capp. I have found the alternative version of this game and at $E257 it states:
This music module is the copyright of Jas.C.Brooke. (Prepare to Die!)
You might have seen some of the Interface 2 carts I've produced over the last few months support Fuller joysticks. I am planning to update the Tetris image to use ZX0 which in turn will give me an enough space to change all the 128 music into Fuller AY music. Unfortunately I have 4 other carts on the go and all of them are proving dificult to complete :-( so it's unlikely to make it out in 2021.

I also have a Chuckie Egg cart which changes the speech routines to use the Currah uSpeech, unfortunately it is proving to be unreliable and I'm not sure if it's a software or hardware issue. (Using uSpeech from I/F2 cart is tricky because the uSpeech hardware pages itself in at every IM1 interrupt and relies on sysvars being setup in a certain way. If RAMTOP is not correct for example it starts to LDIR blocks of memory around the place! Some of the speech phrases are unintelligble, so i've improved them. Unfortunately the game as-is can't support Interface 2 joysticks so the control routines need to be rewritten.
User avatar
druellan
Dynamite Dan
Posts: 1475
Joined: Tue Apr 03, 2018 7:19 pm

Re: Fuller Box & Fuller Orator support

Post by druellan »

Hope we can find some more. It is for sure an interesting interface, specially the Fuller Master Unit (https://spectrumcomputing.co.uk/entry/1 ... aster_Unit) I was not aware, but this interface combines both the AY chip and the allophone one, and that explains why there are games that support both.

The unit currently on exhibition on http://www.computinghistory.org.uk/det/ ... aster-Unit was donated by David Jones, but I could not find any sound support on his games.
I have found the alternative version of this game and at $E257 it states:
This music module is the copyright of Jas.C.Brooke. (Prepare to Die!)
Many of his games have support. Not sure if he had a relation with Fuller or just he owned a box and liked it.
I am planning to update the Tetris image to use ZX0 which in turn will give me an enough space to change all the 128 music into Fuller AY music
Is there a way we can detect support for Fuller Box searching for some hexa in the code? It does not matter if we have a ton of false positives, but just to have a way to filter a bit the collection and start testing.
jimmy
Drutt
Posts: 35
Joined: Sun Nov 24, 2019 9:06 pm

Re: Fuller Box & Fuller Orator support

Post by jimmy »

druellan wrote: Tue Oct 12, 2021 11:29 am Is there a way we can detect support for Fuller Box searching for some hexa in the code?
Reading the Fuller joystick involves IN 127 so I'd search for bytes $DB,$7F

Writing to the sound chip involves OUT 63 and OUT 95. As the data port is more likely to be used I'd search for bytes $D3,$5F

Writing to the speech chip (Orator) involves OUT 159,so I'd also search for bytes $D3,$9F

Ideally you need games in .tap or .sna format to make searching easier. Unfortunately a lot of games decrypt themselves once loaded so the snapshot route is probably more reliable. For now I've made do with converting all .tzx files to .tap where possible. Unfortunately it won't convert hyperloaders but in my case most compiled games don't use them (I was searching all games to see which were compiled with MCoder 1, MCoder 2, Softek, etc..)
druellan wrote: Tue Oct 12, 2021 11:29 am Many of his games have support. Not sure if he had a relation with Fuller or just he owned a box and liked it.
Fuller wasn't around by the time Andy Capp was released, so I guess he just owned a box. Other companies in the past were probably given one to use - I'm thinking Imagine here. Other authors such as Jon Ritman and Simon Brattel probably just owned one.

I own a standard Fuller unit (no speech) and they are good (if a little too loud). This is why I try and add support for the Fuller joystick in my I/F2 carts - it's an interface where i can't just redefine the keys to work (like ZX Interface 2, Cursor, AGF/Protek, DKTronics). I saw in Vectorball a useful Fuller conversion routine where the bits of the Fuller joystick are mirrored (bit 7 to 0, bit 6 to 1 etc.) and then passed to the Kempston routine. Unfortunately their version didn't work, but the logic was sound and I have used it in a few other games as it doesn't require many bytes.
User avatar
balford
Drutt
Posts: 35
Joined: Mon Nov 13, 2017 2:01 pm
Location: Ireland

Re: Fuller Box & Fuller Orator support

Post by balford »

Hi [mention]druellan[/mention],

Have you worked out what the AY clock rate is on the Fuller box? It's different than on the 128 machines, and the zxnet wiki states:
The Fuller Box is nominally clocked at 1.75 MHz but suffers from contention problems.
I've been keeping an eye out for a Fuller Box myself for a bit, so I can 'scope the clock (the circuitry is hidden by the speaker on any PCB shots I've found).
Fixing ZX Spectrums in the 21st Century
https://github.com/brendanalford/zx-diagnostics
User avatar
druellan
Dynamite Dan
Posts: 1475
Joined: Tue Apr 03, 2018 7:19 pm

Re: Fuller Box & Fuller Orator support

Post by druellan »

balford wrote: Fri Oct 29, 2021 3:45 pm Hi @druellan,
Have you worked out what the AY clock rate is on the Fuller box? It's different than on the 128 machines, and the
No, I don't have the real hardware, I'm testing using Inkspector 2, not sure how good the emulation is, but since I can switch from Fuller Box and Fuller Orator is ideal to test support.
User avatar
balford
Drutt
Posts: 35
Joined: Mon Nov 13, 2017 2:01 pm
Location: Ireland

Re: Fuller Box & Fuller Orator support

Post by balford »

Bump.

To put this to bed, I obtained a Fuller Master Unit a couple of days ago (Combined AY and Orator) and measured the clock to the AY, which is 1.63819MHz.

I’ve updated the Sinclair Wiki (https://sinclair.wiki.zxnet.co.uk/wiki/AY-3-8912) with this info too.
Fixing ZX Spectrums in the 21st Century
https://github.com/brendanalford/zx-diagnostics
User avatar
TMD2003
Rick Dangerous
Posts: 2043
Joined: Fri Apr 10, 2020 9:23 am
Location: Airstrip One
Contact:

Re: Fuller Box & Fuller Orator support

Post by TMD2003 »

Incidentally, Defcom has a Fuller box option.

The music is far better than the game...
Spectribution: Dr. Jim's Sinclair computing pages.
Features my own programs, modified type-ins, RZXs, character sets & UDGs, and QL type-ins... so far!
^m00h^
Dizzy
Posts: 87
Joined: Fri Apr 17, 2020 11:48 pm

Re: Fuller Box & Fuller Orator support

Post by ^m00h^ »

Please add Rastan 128.
Inky
Dizzy
Posts: 95
Joined: Tue Dec 10, 2019 10:05 pm
Location: Sheffield, UK

Re: Fuller Box & Fuller Orator support

Post by Inky »

druellan wrote: Sat Oct 30, 2021 10:46 pm
balford wrote: Fri Oct 29, 2021 3:45 pm Hi @druellan,
Have you worked out what the AY clock rate is on the Fuller box? It's different than on the 128 machines, and the
No, I don't have the real hardware, I'm testing using Inkspector 2, not sure how good the emulation is, but since I can switch from Fuller Box and Fuller Orator is ideal to test support.
I've just read this and changed Inkspector to use the clock speed reported by @balford. It was using the 128K's AY clock speed.
User avatar
druellan
Dynamite Dan
Posts: 1475
Joined: Tue Apr 03, 2018 7:19 pm

Re: Fuller Box & Fuller Orator support

Post by druellan »

Watching the excellent Nostalgia Nerd video about Imagine Software, I just saw the Bandersnatch expansion board prototype connected to what seems to be a Fuller Box:

Image
TheMartian
Microbot
Posts: 100
Joined: Wed Feb 03, 2021 5:18 am

Re: Fuller Box & Fuller Orator support

Post by TheMartian »

balford wrote: Mon May 02, 2022 12:23 pm Bump.

To put this to bed, I obtained a Fuller Master Unit a couple of days ago (Combined AY and Orator) and measured the clock to the AY, which is 1.63819MHz.

I’ve updated the Sinclair Wiki (https://sinclair.wiki.zxnet.co.uk/wiki/AY-3-8912) with this info too.
Hi! Sorry to respond to a two-year-old message. I wanted to clarify a couple things:

- So, the Fuller Box does have an internal oscillator from which the 1.638190MHz clock is derived. Is this correct?
- I've tried emulating the Fuller Box using the contended CPU clock and a 1.638190MHz fixed clock. The contended clock method results in a clock around 1.68MHz, and the sound is more distorted than the fixed clock method. It also changes pitch when the amount of contention changes. For instance, in Bosconian '87, the tune in the menu goes slightly higher when the Redefine Keys option is selected. I understand that on a real Fuller Box this effect does not appear, and the pitch in both cases is the same.

Thanks in any case :smile:
User avatar
balford
Drutt
Posts: 35
Joined: Mon Nov 13, 2017 2:01 pm
Location: Ireland

Re: Fuller Box & Fuller Orator support

Post by balford »

Apologies @TheMartian as I've only seen this message now :)

The Fuller Box unit I have has an onboard crystal that's missing its markings but I've measured it as the aforementioned 1.638190MHz. I've not observed any contention related slowdown effects on real hardware.
Fixing ZX Spectrums in the 21st Century
https://github.com/brendanalford/zx-diagnostics
TheMartian
Microbot
Posts: 100
Joined: Wed Feb 03, 2021 5:18 am

Re: Fuller Box & Fuller Orator support

Post by TheMartian »

balford wrote: Fri Dec 29, 2023 1:04 am The Fuller Box unit I have has an onboard crystal that's missing its markings but I've measured it as the aforementioned 1.638190MHz. I've not observed any contention related slowdown effects on real hardware.
Thanks! This is a quite important piece of info: The Fuller Box clock is then an uncontended 1.638190MHz clock crystal. This makes sense.

I'm going to update my emulator then so I get this right :D

Thanks again!
TheMartian
Microbot
Posts: 100
Joined: Wed Feb 03, 2021 5:18 am

Re: Fuller Box & Fuller Orator support

Post by TheMartian »

And... fixed.

I've been comparing how the tunes sound in SpecIde with the video from The Spectrum Show Ep 103, and they quite match now.

I'll upload binaries tomorrow. :D
Post Reply