Jump to content
Tuts 4 You

New SID Player in MASM : TitchySID


StatMat

Recommended Posts

Well, I've decided to release v1.0 of my new TitchySID library that I've been working on over the past few days. It's written in MASM and weighs in at about 12.3kb. Full source is included for those that want a nose, but be warned, it's pretty hard to understand in places because I wanted it to be as small as possible! Also included is my mini-patch app as an example of how to use the library. Hopefully some of you guys will find it useful. ;)

TitchySID_v1.rar

Link to comment

First of all, welcome to the forums... B)

Second, you don't know how badly i wanted something like this... Thanks a million. :worthy:

Check these tunes out... Both of them clones of "Strike Force" by JCH - one of the best tunes ever imho.

The library seems not to support them. DeliPlayer playback is not good with them either.

Don't know what the problem is.

Sforce.rar

Any chance of supporting .D00 and .D01 formats files as well (adlib by JCH of The Vibrants) ?

Edited by HVC
Link to comment

Thanks for the welcome! B)

I can play them both with my lib and Deliplayer. Do you mean they sound wrong with my lib and DP? I am not sure how they're supposed to sound. Is it perhaps the distortion?

To make the lib play them with the sample, you have to alter the following line in minip.asm (after naming your sid file music.sid):

; Start the SID music playing
invoke StartSID, 80, 0, SID_RESOURCE, 5

To:

; Start the SID music playing
invoke StartSID, 80, 0, SID_RESOURCE, 0

That will change the subsong to the first in the file (the Last Ninja one I used for the example had several subsongs, and the one I wanted happened to be 5).

As for support for other things, I will certainly consider it. This is just version one after all! ;)

Link to comment
To make the lib play them with the sample, you have to alter the following line in minip.asm (after naming your sid file music.sid):
; Start the SID music playing
invoke StartSID, 80, 0, SID_RESOURCE, 0

Thanks, that did the trick. In my rush to test it, i just renamed the module to music.sid, but didn't check the source to see (and modify) the related code.

It's one of those "d'oh moments" i 've been experiencing in regular intervals lately. :rolleyes:

I am not sure how they're supposed to sound. Is it perhaps the distortion?

Yes, it's the distortion, but perhaps this is the way they originally sounded as well. As i said, these are clones - maybe (most likely) bad ones.

I'll notify you if i can find an xtro i have, in which the music sounds crystal clear. Gotta digg deep though. ;)

Anyway, thanks for the lib man, you rock. B)

Edited by HVC
Link to comment

Nice that you popped up over here :cool2:

I already enjoyed one of your sources in the past (Mini-Patch v1.2 ?) !

asm ftw

Edited by Ufo-Pu55y
Link to comment
Nice that you popped up over here :cool2:

I already enjoyed one of your sources in the past (Mini-Patch v1.2 ?) !

asm ftw

Cool. I'm surprised my lamo code filtered around! :P

Link to comment
Thanks, that did the trick. In my rush to test it, i just renamed the module to music.sid, but didn't check the source to see (and modify) the related code.

It's one of those "d'oh moments" i 've been experiencing in regular intervals lately.

No worries, I do that all the time! :D

Link to comment
Nice that you popped up over here :cool2:

I already enjoyed one of your sources in the past (Mini-Patch v1.2 ?) !

asm ftw

So do i. Saw that patch posted at BIW reversing like years ago hehe,it jus sexy! :D .

Link to comment

@all:

Here's a link to a good .sid repository:

http://ucan.foad.org/asd/music/sid/

@StatMat:

Here's "Strike Force" in .d00 format. It should give an impression on what my expectations were when i tried to playback the .sids.

You can hear it in XMPlay ( with the Ganbatte! plugin ofc).

Oh well, bad conversions, i assume...

Anyway, thanks again for TitchySID. :D

Strike_Force.D00.zip

Edited by HVC
Link to comment
Here's "Strike Force" in .d00 format. It should give an impression on what my expectations were when i tried to playback the .sids.

Okay, that sounds much nicer! :P

Actually, I didn't know much about this format, although I am familiar with adlib in general. I got hold of JCH's DOS asm player source. It should be possible to port this over to 32-bit MASM and then port over the YM3812 chip emu source from MAME. Could be an interesting little project. No promises, but I may try this in the near future... ;)

Link to comment
Actually, I didn't know much about this format, although I am familiar with adlib in general. I got hold of JCH's DOS asm player source. It should be possible to port this over to 32-bit MASM and then port over the YM3812 chip emu source from MAME. Could be an interesting little project. No promises, but I may try this in the near future... ;)

StatMat, this wasn't to push you into anything... I 've been through the source already, and i know that it's a colossal undertaking - at least for my measures.

Having a sid lib is enough - you already did a fantastic work.

I honestly can't thank you enough. :)

Link to comment

Don't worry, I'm not being pushed into anything. You simply piqued my interest. I am more happy playing with such things in my free time than RCE these days tbh. Anyway, as I said, I'll make no promises. All I can say is that I think it'd be an interesting project... ;)

Link to comment
sweeeeeet... been looking for something like this for a while .. now if only i could find my sid chip collection

Hehehhehe, I recommend any SID from Matt Simmonds AKA "4-Mat".

Matt's stuff absolutely rocks....

Link to comment

Okay, I've now finished working on v1.1 which is now considerably smaller (8.2kb). There's also some optional new functionality such as play/resume and changing songs (which adds about 1k to the lib). The package now contains two demos, one in MASM and the other in C (Visual Studio). And as if that wasn't enough, there's also a proper readme this time! ;)

Hope some of you will find it useful.

TitchySID_v1_1.rar

Link to comment

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...