Log inRegister an accountBrowse CSDbHelp & documentationFacts & StatisticsThe forumsAvailable RSS-feeds on CSDbSupport CSDb Commodore 64 Scene Database
You are not logged in - nap
CSDb User Forums


Forums > C64 Composing > help with ripping music
2008-12-20 00:35
maestro

Registered: Mar 2004
Posts: 727
help with ripping music

hi it's been such a long time since ive done this that i really cant remember what im doing at all...

i'd like to rip some music from various different sources

i do remember that most tunes where located between 1000 and say 2000 and if i remember rightly the 1st line of code was a jmp which was the initilise and then say 1003 was jsr which was the play address but now im struggling with anything else

can someone tell me how i find the start for sure
tell me how to know the play address
and how to know where the end is

also once the code is found what kind of file should i save the rip in so i can load it up in say a noter

thanks

maestro
2008-12-20 04:25
SIDWAVE
Account closed

Registered: Apr 2002
Posts: 2238
1, find the sound routine, by finding the volume setting (d418)

2, look at the code, be sure it is music player, and not sound effects player (game)

3, narrow the mem area down, where it is roughly placed

4, find the demo/game main interrupt routine,
it is setting up 0314/0315 or fffe/ffff. if fffe is 24 and ffff is 10, then there something running in $1024, then go see what it is.

4.1, if you cannot find it. start from the beginning of the program, when it is RUN. debug it, set breakpoints, to stop at certain points, so you know where you are, and can say for certain, that "now i am on the screen that plays the music"

5, find one or more JSR from the interrupt code, going into the music area you found. one of them is the play!

6, go back, read the player you found, go backwards, to find the start of the player, it is very likely that both init and play of music, is at the start of it, but its not guaranteed.

7, code an interrupt, and jsr what you think is the init, and the play, see if you can get the tune to work from your own control

8, when it plays, save from start of player, and to what clearly is the end of the notedata + something extra because you cant be sure.

9, when this method is starting to work every time, your last address save buffer will go down to exact correct byte (you learn it)

it all sounds a lot of work, and it can be, but it can also be a 1 minute job. you need to know the few basics, which are:

SEI
STA FFFE/FFFF
STA 0314/0315
CLI
JSR ????
JMP ????
BNE ????
BEQ ????
CMP ??
CPY ??
CPX ??

LDA #$0F/#$1F
STA $D418
RTS

if you know these commands, and keep going and dont give up, it will work sooner or later :)

10, make code, if necessary, so the music can be initialized with LDA #0-1-2-3-4 etc., JSR init.
put this code somewhere, usually after the whole music+data, if needed, and make this the new init.

11, when the rip works, just save as a normal file.

12, if the noter allows it, load the ripped tune, and enter the correct init and play address, like your self made interrupt used to get it playing.

some noters can only load music in $1000+ .....

13, look at already ripped music. load .sids in sidedit, look at the init address code, look at the play address code, look at the hexdump of the note data (in a c64 monitor)

they dont all look the same, but there is a general pattern, especially how note data looks like.

this gives you an idea what to look for.
2008-12-20 04:45
SIDWAVE
Account closed

Registered: Apr 2002
Posts: 2238
Recommended lesson #1: rip commando by rob hubbard
RefreshSubscribe to this thread:

You need to be logged in to post in the forum.

Search the forum:
Search   for   in  
All times are CET.
Search CSDb
Advanced
Users Online
Fred/Channel 4
JCH/Vibrants
ΛΛdZ
rexbeng
zscs
Guests online: 78
Top Demos
1 Next Level  (9.7)
2 13:37  (9.7)
3 Mojo  (9.7)
4 Coma Light 13  (9.6)
5 The Demo Coder  (9.6)
6 Edge of Disgrace  (9.6)
7 What Is The Matrix 2  (9.6)
8 Uncensored  (9.6)
9 Comaland 100%  (9.6)
10 Wonderland XIV  (9.6)
Top onefile Demos
1 Layers  (9.6)
2 Cubic Dream  (9.6)
3 Party Elk 2  (9.6)
4 X-Mas Demo 2024  (9.6)
5 Copper Booze  (9.6)
6 Dawnfall V1.1  (9.5)
7 Rainbow Connection  (9.5)
8 Onscreen 5k  (9.5)
9 Morph  (9.5)
10 Libertongo  (9.5)
Top Groups
1 Booze Design  (9.3)
2 Oxyron  (9.3)
3 Performers  (9.3)
4 Censor Design  (9.3)
5 Triad  (9.3)
Top Diskmag Editors
1 Magic  (9.8)
2 Jazzcat  (9.5)
3 hedning  (9.4)
4 Elwix  (9.1)
5 Remix  (9.1)

Home - Disclaimer
Copyright © No Name 2001-2024
Page generated in: 0.036 sec.