Jump to content

MuseScore/4a - Music for the TI


Recommended Posts

On 3/29/2024 at 5:56 AM, syd michel said:

I am really sorry about that, my bad.  I was trying to be too clever for my own good.  I had attempted to copy the generated XB256 Soundlist and paste it into Classic99, and of course it didn't work (which is a shame).  Even after editing the long lines & tweeking the entry points, XB256 didnt know how to handle BIN$(). "String-number mismatch".


You know the old addage, Never read the instructions unless absolutly nessesary, well i had to read them. I exported the code as FIAD, & merged it into my program.  It worked perfectly, as you intended.


Thank you.

The sound lists consist of bytes from 0 to 255. As far as I know, when you paste into Classic99, it works the same as if you had typed the characters on the keyboard. But the sound list data statement has many characters that cannot be entered via the keyboard, hence the error messages. When you merge the file, no error checking is done, so it just works.

Link to comment
Share on other sites

On 4/1/2024 at 8:38 PM, SteveB said:

You are right again ... my music knowlegde wasn't suffient when I started this program. I works only correct when in C major. This is why the first note on the second, fourth, sixth and eights measure have a explicit "natual" accidental.


The <alter> seems to reflect this already.


@syd michel Does this sounds right?


  Reveal hidden contents

100 CALL SOUND(500,220,0) ! M001: quarter 3A 
110 CALL SOUND(500,277,0) ! M001: quarter 4C#
120 CALL SOUND(500,329,0) ! M001: quarter 4E 
130 CALL SOUND(500,369,0) ! M001: quarter 4F#
140 CALL SOUND(500,391,0) ! M002: quarter 4G 
150 CALL SOUND(500,369,0) ! M002: quarter 4F#
160 CALL SOUND(500,329,0) ! M002: quarter 4E 
170 CALL SOUND(500,277,0) ! M002: quarter 4C#
180 CALL SOUND(500,220,0) ! M003: quarter 3A 
190 CALL SOUND(500,277,0) ! M003: quarter 4C#
200 CALL SOUND(500,329,0) ! M003: quarter 4E 
210 CALL SOUND(500,369,0) ! M003: quarter 4F#
220 CALL SOUND(500,391,0) ! M004: quarter 4G 
230 CALL SOUND(500,369,0) ! M004: quarter 4F#
240 CALL SOUND(500,329,0) ! M004: quarter 4E 
250 CALL SOUND(500,277,0) ! M004: quarter 4C#
260 CALL SOUND(500,293,0) ! M005: quarter 4D 
270 CALL SOUND(500,369,0) ! M005: quarter 4F#
280 CALL SOUND(500,440,0) ! M005: quarter 4A 
290 CALL SOUND(500,493,0) ! M005: quarter 4B 
300 CALL SOUND(500,523,0) ! M006: quarter 5C 
310 CALL SOUND(500,493,0) ! M006: quarter 4B 
320 CALL SOUND(500,440,0) ! M006: quarter 4A 
330 CALL SOUND(500,369,0) ! M006: quarter 4F#
340 CALL SOUND(500,220,0) ! M007: quarter 3A 
350 CALL SOUND(500,277,0) ! M007: quarter 4C#
360 CALL SOUND(500,329,0) ! M007: quarter 4E 
370 CALL SOUND(500,369,0) ! M007: quarter 4F#
380 CALL SOUND(500,391,0) ! M008: quarter 4G 
390 CALL SOUND(500,369,0) ! M008: quarter 4F#
400 CALL SOUND(500,329,0) ! M008: quarter 4E 
410 CALL SOUND(500,277,0) ! M008: quarter 4C#
420 CALL SOUND(500,329,0) ! M009: quarter 4E 
430 CALL SOUND(500,415,0) ! M009: quarter 4G#
440 CALL SOUND(500,493,0) ! M009: quarter 4B 
450 CALL SOUND(500,415,0) ! M009: quarter 4G#
460 CALL SOUND(500,293,0) ! M010: quarter 4D 
470 CALL SOUND(500,369,0) ! M010: quarter 4F#
480 CALL SOUND(500,440,0) ! M010: quarter 4A 
490 CALL SOUND(500,369,0) ! M010: quarter 4F#
500 CALL SOUND(500,220,0) ! M011: quarter 3A 
510 CALL SOUND(500,277,0) ! M011: quarter 4C#
520 CALL SOUND(500,329,0) ! M011: quarter 4E 
530 CALL SOUND(500,369,0) ! M011: quarter 4F#
540 CALL SOUND(500,440,0) ! M012: quarter 4A 
550 CALL SOUND(500,369,0) ! M012: quarter 4F#
560 CALL SOUND(500,440,0) ! M012: quarter 4A 
570 CALL SOUND(500,440,30) ! M012: quarter 4A 



The quick patch seems to cure the problem. I will rework the code a little and prepare a new release in the next days.

Link to comment
Share on other sites

I'm testing my changes and I am amazed how some songs sound much better now .. This one is in G minor (though Google lists half a dozen of keys for this song) ... Enjoy


100 DATA 500,220,0,0,500,349,174,0,375,415,349,0,125,349,311,0,125,220,0,0,125,349,311,0
110 DATA 250,466,261,0,250,349,311,0,250,311,349,0,500,349,174,0,375,523,349,0,125,349,349,0
120 DATA 125,220,0,0,125,349,233,0,250,554,261,0,250,523,311,0,250,415,349,0,250,349,138,0
130 DATA 250,523,138,0,250,698,277,0,125,349,277,0,125,311,311,0,125,220,0,0,125,311,311,0
140 DATA 250,261,261,0,250,391,311,0,750,349,349,0,625,220,0,0,125,311,0,0,250,261,0,0
150 DATA 250,233,0,0,250,207,0,0,500,349,174,0,375,415,349,0,125,349,311,0,125,220,0,0
160 DATA 125,349,311,0,250,466,261,0,250,349,311,0,250,311,349,0,500,349,174,0,375,523,349,0
170 DATA 125,349,349,0,125,220,0,0,125,349,233,0,250,554,261,0,250,523,311,0,250,415,349,0
180 DATA 250,349,138,0,250,523,138,0,250,698,277,0,125,349,277,0,125,311,311,0,125,220,0,0
190 DATA 125,311,311,0,250,261,261,0,250,391,311,0,750,349,349,0,625,220,0,0,125,311,0,0
200 DATA 250,261,0,0,250,233,0,0,250,207,0,0,250,174,0,0,125,523,174,0,125,523,174,523
210 DATA 125,523,349,0,250,523,349,523,125,622,311,523,125,622,0,0,125,622,311,622
220 DATA 250,622,261,622,125,587,311,0,125,587,311,587,250,587,349,587,250,174,0,0
230 DATA 125,523,174,0,125,523,174,523,125,523,349,0,250,523,349,523,125,622,349,523
240 DATA 125,622,0,0,125,622,233,622,125,587,261,622,125,587,261,587,125,523,311,0
250 DATA 125,523,311,523,250,523,349,523,250,138,0,0,125,415,138,0,125,415,138,415
260 DATA 125,415,277,0,250,415,277,415,125,415,311,415,125,415,0,0,125,466,311,0
270 DATA 250,466,261,466,125,311,466,0,125,466,311,466,250,466,349,466,250,349,0,0
280 DATA 125,523,349,0,125,523,349,523,125,523,0,0,375,523,523,0,125,466,0,0,125,523,311,0
290 DATA 250,523,261,523,250,233,523,0,250,207,523,0,250,174,0,0,125,523,174,0,125,523,174,523
300 DATA 125,523,349,0,250,523,349,523,125,622,311,523,125,622,0,0,125,622,311,622
310 DATA 250,622,261,622,125,587,311,0,125,587,311,587,250,587,349,587,250,174,0,0
320 DATA 125,523,174,0,125,523,174,523,125,523,349,0,250,523,349,523,125,622,349,523
330 DATA 125,622,0,0,125,622,233,622,125,587,261,622,125,587,261,587,125,523,311,0
340 DATA 125,523,311,523,250,523,349,523,250,138,0,0,125,415,138,0,125,415,138,415
350 DATA 125,415,277,0,250,415,277,415,125,415,311,415,125,415,0,0,125,466,311,0
360 DATA 250,466,261,466,125,311,466,0,125,466,311,466,250,466,349,466,250,349,0,0
370 DATA 125,523,349,0,125,523,349,523,125,523,0,0,375,523,523,0,125,466,0,0,125,523,311,0
380 DATA 250,523,261,523,250,233,523,0,250,207,523,0,1500,523,0,0
390 ! Player code
400 FOR I=1 to 158
410 READ DUR,F1,F2,F3
430 NEXT I


This restores the (sound-) honor of the TI-99/4a and the faith in the TMS9919, doesn't it?

  • Like 2
Link to comment
Share on other sites

2 minutes ago, syd michel said:

Is that Axel Foley? from Beverly Hills Cop.  It sounds right.  Have you seen the attached version.  its a disk image format loaded in extended basic (OLD DSK?.AXELFOLEY).  If using classic99, CPU throttling to Normal.

AXELFOLEY 13.88 kB · 0 downloads

i recently posted a video of my real ti99 system playing the original AlexF music source.



  • Like 2
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.

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.

  • Recently Browsing   0 members

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