Music in-game Spec 48k

The place for codemasters or beginners to talk about programming any language for the Spectrum.
Post Reply
Materion
Drutt
Posts: 1
Joined: Sat Feb 22, 2020 10:50 am

Music in-game Spec 48k

Post by Materion »

Hello,

Is there a possibility to have music in game coding game on Speccy 48k ? I found program called Beepola that gives option to do 2 channel + drums music and export it to assembly code. Still - its not too cpu expensive ?

Thanks in advance for reply :D
User avatar
PROSM
Manic Miner
Posts: 472
Joined: Fri Nov 17, 2017 7:18 pm
Location: Sunderland, England
Contact:

Re: Music in-game Spec 48k

Post by PROSM »

With regards to in-game music, what usually happens is that the game plays one note after each iteration of the game loop. You can see examples of this in Manic Miner or in Globus (the latter is the best example, as it uses the Music Box engine, which is presumably what you wish to use as well).

All you need to do is compose your song in Beepola using either the Music Box, Music Studio or ROM Beep engines, and then compile your song with the option to exit after every note. Then, just call it from your code after each loop of the game logic.

Something to consider though is that any sort of sound output on the 48K models is pretty processor intensive, as the CPU is having to control the loudspeaker directly, so you'll have to really optimize your main code if you want your game to run at a decent speed with music.
All software to-date
Working on something, as always.
User avatar
Ast A. Moore
Rick Dangerous
Posts: 2640
Joined: Mon Nov 13, 2017 3:16 pm

Re: Music in-game Spec 48k

Post by Ast A. Moore »

It’s next to impossible. The best example of the greatest amount of action on the screen while playing multichannel BEEPER music I can think of is the menu screen in Dark Fusion. That’s about as much as you can do.
Every man should plant a tree, build a house, and write a ZX Spectrum game.

Author of A Yankee in Iraq, a 50 fps shoot-’em-up—the first game to utilize the floating bus on the +2A/+3,
and zasm Z80 Assembler syntax highlighter.
Post Reply