compiling asm from Beepola tracker

By nitrofurano

Champion (299)

nitrofurano's picture

27-02-2021, 00:00

i don't know if anyone tried Beepola - http://freestuff.grok.co.uk/beepola/

since it's a tracker targeting zx-spectrum beeper that generates asm files as well, it seems not hard to replace that beeper (port 0xFE, bit 4?) with keyclick ( ppi 8255, port 0xAA, bit 7?) on msx?

did anyone try it?

Login or register to post comments

By jltursan

Prophet (2456)

jltursan's picture

27-02-2021, 09:57

I've recently looking for these kind of replayers and found a very interesting one: NanoBeep2

It sounds really good; but sadly, it's not Beepola compatible:

Nanobeep Beeper Engine Demo (beeper music) - utz/Irrlicht Project [#zx​ spectrum Demo]

Here's a list of 1-bit trackers/replayers: List of 1-bit routines and editors for Sinclair ZX machines. Plenty of them, it's just a matter of getting the simplest one and trying to port it :)

By MsxKun

Paladin (968)

MsxKun's picture

27-02-2021, 20:06

nitrofurano wrote:

i don't know if anyone tried Beepola - http://freestuff.grok.co.uk/beepola/

since it's a tracker targeting zx-spectrum beeper that generates asm files as well, it seems not hard to replace that beeper (port 0xFE, bit 4?) with keyclick ( ppi 8255, port 0xAA, bit 7?) on msx?

did anyone try it?

Yes. I did that one day I was bored. It works. Basically what you say, If I remember well.

Edit: I found the file. It was on the old version of my web, and the download was not available. I uploaded the file to the new site. Still have to make the entry for it, but until now, here are the files (a .BAS and a .BIN)

By st1mpy

Paladin (711)

st1mpy's picture

06-03-2021, 01:41

I've been thinking of a dedicated sound cartridge for msx that does 1bit beeper sound, so I designed it and tested just now and it works! (Used the 1bit.bas/bin above), I used a pc beeper and it was louder than I thought so I had to turn it off straight away, as its midnight here. I have to continue tomorrow.

So, is 1bit.bas playing the 1bit.bin which is already patched for 0xaa? Was the original song data made for 0xfe using Beepola, and is there a converter? I want to try different songs/tracks.
Currently, I'm address decoding for 0xaa so that a key click music can be played, but may be I should change that as I have my own beeper making the sound and dont need the key click.

By st1mpy

Paladin (711)

st1mpy's picture

25-03-2021, 00:58

The beeper (the piezo speaker thing) was too annoying so I changed the design to a external sound output from the cartridge. I've been adding another output, not sound but a sync signal. MSX can now be a master clock to sync other devices now like pocket operator, korg volca etc. And this works nicely.

Is there any tracks that use beeper (key click port) and psg? I want to test my device.
Also, need to find a music player routine that could be modified to include the clock sync output.

By st1mpy

Paladin (711)

st1mpy's picture

30-03-2021, 01:10

Just realised I need to support OUT to AB as well as AA. (AB could receive PPI BSR mode input from the user for beep 0xxx1110 and 0xxx1111 .)

By jltursan

Prophet (2456)

jltursan's picture

30-03-2021, 09:29

So in fact, are you using right now your own beeper hardware?

By st1mpy

Paladin (711)

st1mpy's picture

30-03-2021, 10:01

Yes it's still on the breadboard, but it will be a cartridge. It currently address decodes the key clicks (so 0xaa and 0xab), so it will be compatible with existing msx 1bit key click players. (Unless I should move that to different address. A reason might be because it will also still play the original msx key clicks that gets mixed with psg etc, but I think that can be switched off in bios. I must test that.) The clicks can be direct from the decoder chip but I've added a transistor (allows testing different ones for sound quality), and is line level converted to line out 3.5mm. It also has a separate volca/pocket operator compatible sync output as well so if a player program sends out the sync pattern, the bpm will be in sync with other external sequencers/synths.