1 bit music

Post Reply
MooZ
Posts: 12
Joined: Thu Mar 01, 2018 9:39 am

1 bit music

Post by MooZ » Fri Mar 23, 2018 6:42 pm

Here's a quick test of 1 bit music using the PhaserX engine. I converted the asm output of bintracker.
The changes are quite light but I fear it messed up the timing a little bit. The output on ZX spectrum is done using

Code: Select all

out (#fe), a
whereas on MZ, we have:

Code: Select all

and #08
or  #20
ld  (0xe007), a
Which nearly doubles the number of cycles. As it's not IRQ/timer based, it may add a supplemental delay.

Anyway, the archive contains the tape and the modified source file.

Here's a short video of the music playing on my Sharp MZ720.
https://www.youtube.com/watch?v=mOC-X9ich1o
Attachments
music.zip
(5.23 KiB) Downloaded 8 times

hlide
Posts: 47
Joined: Thu Jan 25, 2018 9:31 pm

Re: 1 bit music

Post by hlide » Fri Mar 23, 2018 8:26 pm

If register a is load from a table, I don't see the point to make "and #8; or #20". Better to alter the table so it contains the right value to provide to "ld (0xe007), a". Am I wrong?

EDIT: let me check the source.

EDIT2: the issue sounds more complex to address indeed.
Last edited by hlide on Sat Mar 24, 2018 1:27 pm, edited 1 time in total.

User avatar
mz-80a
Posts: 51
Joined: Thu Jan 25, 2018 10:46 am
Location: Devon, UK
Contact:

Re: 1 bit music

Post by mz-80a » Sat Mar 24, 2018 12:30 pm

Interesting, I enquired a long time back on the World of Spectrum forums about 1-bit sampled sound but unfortunately the theory is too difficult for me. Great if you have managed to translate an existing engine to the Sharp. I'll take a listen later on to your sound clip. Soon, Sharpworks will be working on a standard music player for games...
MZ-80A Secrets
https://mz-80a.com/

Sharpworks (Sharp MZ homebrew)
http://mz-sharpworks.co.uk/

MooZ
Posts: 12
Joined: Thu Mar 01, 2018 9:39 am

Re: 1 bit music

Post by MooZ » Sat Mar 24, 2018 6:42 pm

The next version of Arkos Tracker will have a full mz support.

hlide
Posts: 47
Joined: Thu Jan 25, 2018 9:31 pm

Re: 1 bit music

Post by hlide » Sat Mar 24, 2018 8:36 pm

"SID support"

what does it mean? SID format support?

User avatar
mz-80a
Posts: 51
Joined: Thu Jan 25, 2018 10:46 am
Location: Devon, UK
Contact:

Re: 1 bit music

Post by mz-80a » Sun Mar 25, 2018 8:36 pm

MooZ wrote:
Sat Mar 24, 2018 6:42 pm
The next version of Arkos Tracker will have a full mz support.
Very interesting. Will it be interrupt driven? How much memory does it take up?
MZ-80A Secrets
https://mz-80a.com/

Sharpworks (Sharp MZ homebrew)
http://mz-sharpworks.co.uk/

hlide
Posts: 47
Joined: Thu Jan 25, 2018 9:31 pm

Re: 1 bit music

Post by hlide » Sun Mar 25, 2018 10:06 pm

I don't think it is interrupt-driven. It looks like the loop is as fast as possible so I don't think an interrupt-driven version is doable. I mean, there is no CPU resource (all registers are used in the loop!) to make anything else.

MooZ
Posts: 12
Joined: Thu Mar 01, 2018 9:39 am

Re: 1 bit music

Post by MooZ » Sun Mar 25, 2018 11:00 pm

The arkos replay routine is interrupt based. The replay code and the songs are not that big if I remeber correctly.

hlide
Posts: 47
Joined: Thu Jan 25, 2018 9:31 pm

Re: 1 bit music

Post by hlide » Mon Mar 26, 2018 12:14 am

MooZ wrote:
Sun Mar 25, 2018 11:00 pm
The arkos replay routine is interrupt based. The replay code and the songs are not that big if I remeber correctly.
So it isn't the same as the one generated by bintracker? well, as long the driven-interrupt is not interrupting too much.

hlide
Posts: 47
Joined: Thu Jan 25, 2018 9:31 pm

Re: 1 bit music

Post by hlide » Sun Apr 01, 2018 8:40 pm

MooZ, you will probably recognize the music.

Post Reply