Jump to content
IGNORED

JetBall (Hypa Ball clone) (In Progress) XB256 Compiled


LASooner

Recommended Posts

Now that I'm wrapping up work on Night Stalker, it's time to start working on Something else to hold my interest. I've decided to try to recreate HypaBall from the Commodore 64. Kind of Pong meets rollerball with jetpacks

 

I've decided I like working my s**t out in public, so instead of sitting on it, I'm going to post as I develop it. Should be fun and infuriating to make.

 

So this is what I've got since Friday of last week.

 

 

 

As you can see I have player 1 movement and sprites defined

ball bounces properly off boundaries and teleports from left to right

Character color shifts to accommodate dark background

 

Immediate tasks:

 

Be able to catch the ball and throw it in any direction.
Pause movement for characters not on the side with the ball

Register goal and who scored it.

Get 2nd player functioning

Allow 2nd player to be CPU controlled

Register Foul for holding the ball too long

Penalty kick

Animate Crowd

Sprite Order rotation based on ball position and character priority

 

 

 

 

 

Here's the original C-64 inspiration

 

 

 

  • Like 13
Link to comment
Share on other sites

Quick, get this man a SID blaster card ;)

 

 

Yeah, I don't know how much of the song I'm going to be able to do

 

 

I tell you something, you certainly impress me. This stuff is good. I like it.

 

I've noticed also you don't seem to take on easy tasks. There's a lot of stuff going on , there on the screen. Great job so far. I'll be following this.

 

 

Thanks, I just like seeing if it can be done with the tools Senior Falcon has given us.

 

I hope to take another shot at bomb squad when I feel up to it. But this was one of my favorite games I had on the C-64, and it's different enough from Night Stalker to challenge me in different ways. I'm still not sure if I'll have the match timed or first one to 20 wins. But I do like the idea of trying to make this 2 player or 1 player.

Link to comment
Share on other sites

 

 

5 ! HYPA-BALL SONG #4
10 CALL SOUND(116,554,4,277,2,220,30,-1,15)
20 CALL SOUND(116,554,4,370,2,276,4)
30 CALL SOUND(116,554,6,277,2,276,6)
40 CALL SOUND(116,495,4,370,2,246,4)
50 CALL SOUND(116,495,6,277,2,246,6)
60 CALL SOUND(116,466,4,370,2,233,4)
70 CALL SOUND(116,466,6,277,2,233,6)
80 CALL SOUND(116,416,4,370,2,207,4)
90 CALL SOUND(116,416,6,277,2,207,6)
100 CALL SOUND(116,466,4,370,2,233,4)
110 CALL SOUND(116,466,6,277,2,233,6)
120 CALL SOUND(116,495,4,370,2,246,4)
130 CALL SOUND(116,495,6,277,2,246,6)
140 CALL SOUND(116,495,4,330,2,246,4)
150 CALL SOUND(116,495,6,247,2,246,6)
160 CALL SOUND(116,440,4,330,2,220,4)
170 CALL SOUND(116,440,6,247,2,220,6)
180 CALL SOUND(116,416,4,330,2,207,4)
190 CALL SOUND(116,416,6,247,2,207,6)
200 CALL SOUND(116,370,4,330,2,185,4)
210 CALL SOUND(116,370,6,247,2,185,6)
220 CALL SOUND(116,416,4,330,2,207,4)
230 CALL SOUND(116,416,6,247,2,207,6)
240 CALL SOUND(116,440,4,330,2,220,4)
250 CALL SOUND(116,440,6,277,2,220,6)
260 CALL SOUND(233,554,4,370,2,185,4)
270 CALL SOUND(233,554,6,370,6,185,6)
280 CALL SOUND(233,554,8,370,8,185,
290 CALL SOUND(233,554,10,370,10,185,10)
300 CALL SOUND(233,554,12,370,12,185,12)
310 CALL SOUND(233,554,14,370,14,185,14)
320 CALL SOUND(233,554,16,370,16,185,16)
330 CALL SOUND(233,554,18,370,18,185,18)
340 CALL SOUND(233,554,20,370,20,185,20)
350 CALL SOUND(233,554,22,370,22,185,22)
360 CALL SOUND(233,554,24,370,24,185,24)
370 CALL SOUND(233,554,26,370,26,185,26)
380 CALL SOUND(233,554,28,370,28,185,28)

  • Like 1
Link to comment
Share on other sites

 

 

 

5 ! HYPA-BALL SONG #4
10 CALL SOUND(116,554,4,277,2,220,30,-1,15)
20 CALL SOUND(116,554,4,370,2,276,4)
30 CALL SOUND(116,554,6,277,2,276,6)
40 CALL SOUND(116,495,4,370,2,246,4)
50 CALL SOUND(116,495,6,277,2,246,6)
60 CALL SOUND(116,466,4,370,2,233,4)
70 CALL SOUND(116,466,6,277,2,233,6)
80 CALL SOUND(116,416,4,370,2,207,4)
90 CALL SOUND(116,416,6,277,2,207,6)
100 CALL SOUND(116,466,4,370,2,233,4)
110 CALL SOUND(116,466,6,277,2,233,6)
120 CALL SOUND(116,495,4,370,2,246,4)
130 CALL SOUND(116,495,6,277,2,246,6)
140 CALL SOUND(116,495,4,330,2,246,4)
150 CALL SOUND(116,495,6,247,2,246,6)
160 CALL SOUND(116,440,4,330,2,220,4)
170 CALL SOUND(116,440,6,247,2,220,6)
180 CALL SOUND(116,416,4,330,2,207,4)
190 CALL SOUND(116,416,6,247,2,207,6)
200 CALL SOUND(116,370,4,330,2,185,4)
210 CALL SOUND(116,370,6,247,2,185,6)
220 CALL SOUND(116,416,4,330,2,207,4)
230 CALL SOUND(116,416,6,247,2,207,6)
240 CALL SOUND(116,440,4,330,2,220,4)
250 CALL SOUND(116,440,6,277,2,220,6)
260 CALL SOUND(233,554,4,370,2,185,4)
270 CALL SOUND(233,554,6,370,6,185,6)
280 CALL SOUND(233,554,8,370,8,185,
290 CALL SOUND(233,554,10,370,10,185,10)
300 CALL SOUND(233,554,12,370,12,185,12)
310 CALL SOUND(233,554,14,370,14,185,14)
320 CALL SOUND(233,554,16,370,16,185,16)
330 CALL SOUND(233,554,18,370,18,185,18)
340 CALL SOUND(233,554,20,370,20,185,20)
350 CALL SOUND(233,554,22,370,22,185,22)
360 CALL SOUND(233,554,24,370,24,185,24)
370 CALL SOUND(233,554,26,370,26,185,26)
380 CALL SOUND(233,554,28,370,28,185,28)

 

 

Awesome! Did you do some SID to midi to TI thing?

 

I'd also like to point out, this is a perfect example of why sometimes it's a good idea to let people know what you're working on

Edited by LASooner
Link to comment
Share on other sites

This one will sound terrible when run in XB, but the Sound List Compiler might take care of it. YMMV. It should sound like this: Hypa-Ball_Song2(TMS9919).mp3

 

 

 

5 ! HYPA-BALL SONG #3
10 CALL SOUND(16,392,0,185,0,699,30,-4,0)
20 CALL SOUND(16,388,0,185,0)
30 CALL SOUND(16,384,0,185,0)
40 CALL SOUND(33,380,0,185,0)
50 CALL SOUND(16,377,0,185,0)
60 CALL SOUND(16,373,0,185,0)
70 CALL SOUND(66,370,0,185,0)
80 CALL SOUND(316,370,4,185,6,-4,3)
90 CALL SOUND(16,392,0,185,6)
100 CALL SOUND(16,388,0,185,6)
110 CALL SOUND(16,384,0,185,6)
120 CALL SOUND(33,380,0,185,6)
130 CALL SOUND(16,377,0,185,6)
140 CALL SOUND(16,373,0,185,6)
150 CALL SOUND(66,370,4,185,6)
160 CALL SOUND(16,523,0,165,6,621,30)
170 CALL SOUND(16,518,0,165,6)
180 CALL SOUND(16,513,0,165,6)
190 CALL SOUND(33,508,0,165,6)
200 CALL SOUND(16,502,0,165,6)
210 CALL SOUND(16,497,0,165,6)
220 CALL SOUND(66,495,0,165,6)
230 CALL SOUND(150,495,4,165,6,-4,3)
240 CALL SOUND(16,495,0,185,0,699,30,-4,0)
250 CALL SOUND(16,491,0,185,0)
260 CALL SOUND(16,486,0,185,0)
270 CALL SOUND(33,482,0,185,0)
280 CALL SOUND(16,478,0,185,0)
290 CALL SOUND(16,474,0,185,0)
300 CALL SOUND(66,466,0,185,0)
310 CALL SOUND(483,466,4,185,6,-4,3)
320 CALL SOUND(16,392,0,165,6,621,30)
330 CALL SOUND(16,388,0,165,6)
340 CALL SOUND(16,384,0,165,6)
350 CALL SOUND(33,380,0,165,6)
360 CALL SOUND(16,377,0,165,6)
370 CALL SOUND(16,373,0,165,6)
380 CALL SOUND(66,370,0,165,6)
390 CALL SOUND(150,370,4,165,6)
400 CALL SOUND(16,523,0,185,6,699,30)
410 CALL SOUND(16,518,0,185,6)
420 CALL SOUND(16,513,0,185,6)
430 CALL SOUND(33,508,0,185,6)
440 CALL SOUND(16,502,0,185,6)
450 CALL SOUND(16,497,0,185,6)
460 CALL SOUND(66,495,4,185,6,-4,3)
470 CALL SOUND(16,491,0,185,6)
480 CALL SOUND(16,486,0,185,6)
490 CALL SOUND(16,482,0,185,6)
500 CALL SOUND(33,478,0,185,6)
510 CALL SOUND(16,474,0,185,6)
520 CALL SOUND(66,466,4,185,6)
530 CALL SOUND(16,392,0,185,0,-4,0)
540 CALL SOUND(16,388,0,185,0)
550 CALL SOUND(16,384,0,185,0)
560 CALL SOUND(33,380,0,185,0)
570 CALL SOUND(16,377,0,185,0)
580 CALL SOUND(16,373,0,185,0)
590 CALL SOUND(66,370,0,185,0)
600 CALL SOUND(150,370,4,185,6,-4,3)
610 CALL SOUND(16,311,0,185,0,-4,0)
620 CALL SOUND(16,302,0,185,0)
630 CALL SOUND(16,294,0,185,0)
640 CALL SOUND(33,288,0,185,0)
650 CALL SOUND(16,284,0,185,0)
660 CALL SOUND(66,277,0,185,0)
670 CALL SOUND(166,277,4,185,0)
680 CALL SOUND(16,370,0,165,0,621,30,-4,0)
690 CALL SOUND(16,350,0,165,0)
700 CALL SOUND(16,344,0,165,0)
710 CALL SOUND(33,340,0,165,0)
720 CALL SOUND(16,335,0,165,0)
730 CALL SOUND(66,330,0,165,0)
740 CALL SOUND(166,330,4,165,6,-4,3)
750 CALL SOUND(16,392,0,185,0,699,30,-4,0)
760 CALL SOUND(16,388,0,185,0)
770 CALL SOUND(16,384,0,185,0)
780 CALL SOUND(33,380,0,185,0)
790 CALL SOUND(16,377,0,185,0)
800 CALL SOUND(16,373,0,185,0)
810 CALL SOUND(66,370,0,185,6,-4,3)
820 CALL SOUND(16,360,0,165,0,621,30,-4,0)
830 CALL SOUND(16,350,0,165,0)
840 CALL SOUND(33,344,0,165,0)
850 CALL SOUND(16,340,0,165,0)
860 CALL SOUND(16,335,0,165,0)
870 CALL SOUND(66,330,0,165,6,-4,3)
880 CALL SOUND(16,392,0,185,0,699,30,-4,0)
890 CALL SOUND(33,388,0,185,0)
900 CALL SOUND(16,384,0,185,0)
910 CALL SOUND(16,380,0,185,0)
920 CALL SOUND(16,377,0,185,0)
930 CALL SOUND(33,373,0,185,0)
940 CALL SOUND(50,370,0,185,0)
950 CALL SOUND(166,370,4,185,6,-4,3)
960 CALL SOUND(16,523,4,247,0,932,30,-4,0)
970 CALL SOUND(16,518,4,247,0)
980 CALL SOUND(16,513,4,247,0)
990 CALL SOUND(33,508,4,247,0)
1000 CALL SOUND(16,502,4,247,0)
1010 CALL SOUND(16,497,4,247,0)
1020 CALL SOUND(66,495,4,247,6,-4,3)
1030 CALL SOUND(16,589,4,277,0,1045,30,-4,0)
1040 CALL SOUND(16,580,4,277,0)
1050 CALL SOUND(16,574,4,277,0)
1060 CALL SOUND(33,565,4,277,0)
1070 CALL SOUND(16,559,4,277,0)
1080 CALL SOUND(66,554,4,277,6,-4,3)
1090 CALL SOUND(16,699,4,330,0,1243,30,-4,0)
1100 CALL SOUND(16,690,4,330,0)
1110 CALL SOUND(16,682,4,330,0)
1120 CALL SOUND(33,674,4,330,0)
1130 CALL SOUND(16,666,4,330,0)
1140 CALL SOUND(66,658,4,330,6,-4,3)
1150 CALL SOUND(16,782,4,370,0,1398,30,-4,0)
1160 CALL SOUND(16,771,4,370,0)
1170 CALL SOUND(16,761,4,370,0)
1180 CALL SOUND(33,751,4,370,0)
1190 CALL SOUND(16,741,4,370,0)
1200 CALL SOUND(66,731,4,370,6,-4,3)
1210 CALL SOUND(166,731,30,185,4,699,30,-4,0)
1220 CALL SOUND(166,731,30,185,8,-4,2)
1230 CALL SOUND(166,731,30,185,4,1398,30,-4,0)
1240 CALL SOUND(33,731,30,185,4,699,30,-5,0)
1250 CALL SOUND(133,731,30,185,4,-4,0)
1260 CALL SOUND(166,731,30,185,8,-4,2)
1270 CALL SOUND(166,731,30,185,4,1398,30,-4,0)
1280 CALL SOUND(166,731,30,185,4,699,30)
1290 CALL SOUND(166,731,30,185,8,-4,2)
1300 CALL SOUND(166,731,30,185,4,1398,30,-4,0)
1310 CALL SOUND(16,731,30,185,4,699,30,-5,1)
1320 CALL SOUND(150,731,30,185,4,-4,0)
1330 CALL SOUND(166,731,30,330,4,1243,30)
1340 CALL SOUND(166,731,30,370,4,1398,30)
1350 CALL SOUND(166,731,30,185,4,699,30,-4,0)
1360 CALL SOUND(166,731,30,185,8,-4,2)
1370 CALL SOUND(166,731,30,185,4,1398,30,-4,0)
1380 CALL SOUND(33,731,30,185,4,699,30,-5,0)
1390 CALL SOUND(133,731,30,185,4,-4,0)
1400 CALL SOUND(166,731,30,185,8,-4,2)
1410 CALL SOUND(166,731,30,185,4,1398,30,-4,0)
1420 CALL SOUND(166,731,30,185,4,699,30)
1430 CALL SOUND(166,731,30,185,8,-4,2)
1440 CALL SOUND(166,731,30,185,4,1398,30,-4,0)
1450 CALL SOUND(16,731,30,185,4,699,30,-5,1)
1460 CALL SOUND(150,731,30,185,4,-4,0)
1470 CALL SOUND(166,731,30,330,4,1243,30)
1480 CALL SOUND(166,731,30,370,4,1398,30)
1490 CALL SOUND(166,731,30,185,4,699,30,-4,0)
1500 CALL SOUND(166,731,30,185,8,-4,2)
1510 CALL SOUND(166,731,30,185,4,1398,30,-4,0)
1520 CALL SOUND(33,731,30,185,4,699,30,-5,0)
1530 CALL SOUND(133,731,30,185,4,-4,0)
1540 CALL SOUND(166,731,30,185,8,-4,2)
1550 CALL SOUND(166,731,30,185,4,1398,30,-4,0)
1560 CALL SOUND(166,731,30,185,4,699,30)
1570 CALL SOUND(166,731,30,185,8,-4,2)
1580 CALL SOUND(166,731,30,185,4,1398,30,-4,0)
1590 CALL SOUND(16,731,30,185,4,699,30,-5,1)
1600 CALL SOUND(150,731,30,185,4,-4,0)
1610 CALL SOUND(166,731,30,330,4,1243,30)
1620 CALL SOUND(166,731,30,370,4,1398,30)
1630 CALL SOUND(166,731,30,185,4,699,30,-4,0)
1640 CALL SOUND(166,731,30,185,8,-4,2)
1650 CALL SOUND(166,731,30,185,4,1398,30,-4,0)
1660 CALL SOUND(33,731,30,185,4,699,30,-5,0)
1670 CALL SOUND(133,731,30,185,4,-4,0)
1680 CALL SOUND(166,731,30,185,8,-4,2)
1690 CALL SOUND(166,731,30,185,4,1398,30,-4,0)
1700 CALL SOUND(166,731,30,185,4,699,30)
1710 CALL SOUND(166,731,30,185,8,-4,2)
1720 CALL SOUND(166,731,30,185,4,1398,30,-4,0)
1730 CALL SOUND(16,731,30,185,4,699,30,-5,1)
1740 CALL SOUND(150,731,30,185,4,-4,0)
1750 CALL SOUND(166,731,30,330,4,1243,30)
1760 CALL SOUND(166,731,30,370,4,1398,30)
1770 CALL SOUND(166,731,30,185,4,699,30,-4,0)
1780 CALL SOUND(166,731,30,185,8,-4,2)
1790 CALL SOUND(166,731,30,185,4,1398,30,-4,0)
1800 CALL SOUND(33,731,30,185,4,699,30,-5,0)
1810 CALL SOUND(133,731,30,185,4,-4,0)
1820 CALL SOUND(166,731,30,185,8,-4,2)
1830 CALL SOUND(166,731,30,185,4,1398,30,-4,0)
1840 CALL SOUND(166,731,30,185,4,699,30)
1850 CALL SOUND(166,731,30,185,8,-4,2)
1860 CALL SOUND(166,731,30,185,4,1398,30,-4,0)
1870 CALL SOUND(16,731,30,185,4,699,30,-5,1)
1880 CALL SOUND(150,731,30,185,4,-4,0)
1890 CALL SOUND(166,731,30,330,4,1243,30)
1900 CALL SOUND(166,731,30,370,4,1398,30)
1910 CALL SOUND(166,731,30,185,4,699,30,-4,0)
1920 CALL SOUND(166,731,30,185,8,-4,2)
1930 CALL SOUND(166,731,30,185,4,1398,30,-4,0)
1940 CALL SOUND(33,731,30,185,4,699,30,-5,0)
1950 CALL SOUND(133,731,30,185,4,-4,0)
1960 CALL SOUND(166,731,30,185,8,-4,2)
1970 CALL SOUND(166,731,30,185,4,1398,30,-4,0)
1980 CALL SOUND(166,731,30,185,4,699,30)
1990 CALL SOUND(166,731,30,185,8,-4,2)
2000 CALL SOUND(166,731,30,185,4,1398,30,-4,0)
2010 CALL SOUND(16,731,30,185,4,699,30,-5,1)
2020 CALL SOUND(150,731,30,185,4,-4,0)
2030 CALL SOUND(166,731,30,330,4,1243,30)
2040 CALL SOUND(166,731,30,370,4,1398,30)
2050 CALL SOUND(166,731,30,185,4,699,30,-4,0)
2060 CALL SOUND(166,731,30,185,8,-4,2)
2070 CALL SOUND(166,731,30,185,4,1398,30,-4,0)
2080 CALL SOUND(33,731,30,185,4,699,30,-5,0)
2090 CALL SOUND(133,731,30,185,4,-4,0)
2100 CALL SOUND(166,731,30,185,8,-4,2)
2110 CALL SOUND(166,731,30,185,4,1398,30,-4,0)
2120 CALL SOUND(166,731,30,185,4,699,30)
2130 CALL SOUND(166,731,30,185,8,-4,2)
2140 CALL SOUND(166,731,30,185,4,1398,30,-4,0)
2150 CALL SOUND(16,731,30,185,4,699,30,-5,1)
2160 CALL SOUND(150,731,30,185,4,-4,0)
2170 CALL SOUND(166,731,30,330,4,1243,30)
2180 CALL SOUND(166,731,30,370,4,1398,30)

 

 

 

 

 



 

Awesome! Did you do some SID to midi to TI thing?

 

I'd also like to point out, this is a perfect example of why sometimes it's a good idea to let people know what you're working on

 

I have been working on a siddump to sound list module for my sound list manipulation script. It is, shall we say, far from working properly and I have to de-mangle a lot by hand. Some bits I just do by hand.

  • Like 3
Link to comment
Share on other sites

It's better than what I got out converting a sid to a midi and a midi to soundlist, thanks for this!

 

You are welcome. Yeah, sometimes conversions can be like dubbing from BetaMax to VHS to BluRay.

 

I gave CALL SOUND statements because of your programming framework, but I can give you the raw sound lists or VGM if that is more helpful.

Link to comment
Share on other sites

By the way, SID2MIDI can output data in a text format instead of MIDI data. I have found it quite usable together with e.g. IntyBASIC, though it takes a bit of hand work to get desired results. I don't know if you've tried that method or would have use of the text output when converting the data further to the CALL SOUND syntax.

Link to comment
Share on other sites

My script is trained on the output of siddump. I have not tried SID2MIDI but I will check it out and see if the output is more manageable. The biggest problem I run into is the waveform handling and low tones (aside from parsing problems, anyway.) The SID is two octaves lower than the 9919 so some adjustments have to be made during conversion. I can output as a binary which SoundListRipper can import, a VGM, or as BYTE statements. SoundListRipper can create CALL SOUND statements.

Link to comment
Share on other sites

Sounds amazing! A few things to note from my limited expertise with sound lists... You have to be careful since you only have 4 channels to play with, so the sound list could conflict with sound effects.

 

The musical score that I'm using for my game has (at most) 3 notes that play simultaneously - but I wanted to have a note + the noise channel available for sound effects. What I did was drop a 3rd node (actually, I averaged 2 of notes that were played together). I'm no musician, but it sounds fine to me. And, I have sound effects. If you steal all your sound for in-game music, you'll have no effects.

 

Also, make sure you read the documentation for the sound list thoroughly. I noticed you had some repetitive portions of your music... You can provide commands to loop duplicate pieces, which (maybe?) saves memory b/c the sound list handles that in an optimized fashion.

Link to comment
Share on other sites

The built-in ISR routine does not allow for loops, only jumps (and I believe that is undocumented.) @retroclouds' Spectra2 has a copy of the ISR routine, or similar anyway, that I have been tweaking to add new commands.

 

(Ultimately, I will be releasing a special player, but, you know, time.)

Link to comment
Share on other sites

I notice having converted sid to midi and also in your conversions, many frequency changes are subtle enough they could be combined into a single line

 

For example

 

100 CALL SOUND(16,388,0,185,6)
110 CALL SOUND(16,384,0,185,6)
120 CALL SOUND(33,380,0,185,6)
130 CALL SOUND(16,377,0,185,6)
140 CALL SOUND(16,373,0,185,6)

 

Could be changed to this without much noticeable difference

 

100 CALL SOUND(97,380,0,185,6)

 

It loses some of it's funkyness, but saves memory

Edited by LASooner
Link to comment
Share on other sites

I work to be cycle-accurate :) Yeah, some of the sweeps can be cut without losing too much fidelity.

 

Thinking about it, you could probably remove the second and fourth lines in a six-line sweep and retain the middle value, leaving a three-line sweep: origin, intermediate, destination. I did that with PacLand with great results.

Edited by OLD CS1
  • Like 1
Link to comment
Share on other sites

The built-in ISR routine does not allow for loops, only jumps (and I believe that is undocumented.) retroclouds' Spectra2 has a copy of the ISR routine, or similar anyway, that I have been tweaking to add new commands.

 

(Ultimately, I will be releasing a special player, but, you know, time.)

The sound list players in XB256 and the compiler allow GOTO and also FOR/NEXT loops.

Link to comment
Share on other sites

Sounds amazing! A few things to note from my limited expertise with sound lists... You have to be careful since you only have 4 channels to play with, so the sound list could conflict with sound effects.

 

The musical score that I'm using for my game has (at most) 3 notes that play simultaneously - but I wanted to have a note + the noise channel available for sound effects. What I did was drop a 3rd node (actually, I averaged 2 of notes that were played together). I'm no musician, but it sounds fine to me. And, I have sound effects. If you steal all your sound for in-game music, you'll have no effects.

 

This is exactly what the sound player for XB256 and the compiler does. If the melody uses 3 notes and the sound effect uses noise plus one note then the 3rd note of the melody is used for the sound effect instead. When the sound effect is done then the melody goes back to using the 3rd note. Also, the player is more capable than the built in player in ROM. It can use both GOTO and FOR/NEXT loops.

Dolcetto fixes the problem where the sound generators would occasionally not turn off.

Link to comment
Share on other sites

This is exactly what the sound player for XB256 and the compiler does. If the melody uses 3 notes and the sound effect uses noise plus one note then the 3rd note of the melody is used for the sound effect instead. When the sound effect is done then the melody goes back to using the 3rd note. Also, the player is more capable than the built in player in ROM. It can use both GOTO and FOR/NEXT loops.

Dolcetto fixes the problem where the sound generators would occasionally not turn off.

 

Are you also restoring the noise channel value for W3/P3 (-4/-8) noises based upon tone 3?

Link to comment
Share on other sites

I don't understand the question?

 

Both white noise and periodic noise have a mode in which the "frequency" is influenced by the setting of tone 3. If tone 3 and the noise channel get used outside of a song which uses this mode, only restoring tone 3 can effect the intended sound of the song.

Link to comment
Share on other sites

When you compile a sound list you can send an instruction to the sound list player telling it to use either player1 or player2.

 

If you are using player1:

CALL SOUND(1000,220,0) will use generator 1

CALL SOUND(1000,220,0,330,0) will use generators 1 and 2

CALL SOUND(1000,220,0,330,0,440,0) will use generators 1, 2 and 3

 

If you are using player2

CALL SOUND(1000,220,0) will use generator 3

CALL SOUND(1000,220,0,330,0) will use generators 3 and 2

CALL SOUND(1000,220,0,330,0,440,0) will use generators 3,2 and 1

 

And of course, any noise will be using generator 4.

 

So if I understand the question, per the XB manual, a frequency of -4 and -8 is influenced by the frequency of tone 3

 

If using player1 the third frequency provided is what influences the noise generator.

 

If using player2 the first frequency provided is what influences the noise generator.

 

When the interrupt is processed, the sound list being played by player1 is dealt with first and then the sound list for player2 is handled.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...