Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

etracker_bin.h - disassembly available #4

Open
stefandrissen opened this issue Dec 29, 2020 · 4 comments
Open

etracker_bin.h - disassembly available #4

stefandrissen opened this issue Dec 29, 2020 · 4 comments

Comments

@stefandrissen
Copy link

In case you are interested, I have created a disassembly of the e-tracker compiled module player at https://github.com/stefandrissen/e-tracker-player

@Deltafire
Copy link
Owner

Thanks for this, I actually spotted your repository a couple of weeks ago and used your excellent comments to add song loop detection to the replayer.

I had a look at doing the same with compiled etracker files, but wasn't able to figure it out :(

@stefandrissen
Copy link
Author

I'm not sure what you mean with compiled etracker files? The replayer is for compiled files. The only difference in the files out there is that some include the replayer and some do not, but I thought you were already detecting this.

The ones that include the replayer all start with ld hl,module. If so, the easiest way to include your modified player is to put the entire file (including player) after your replayr and adjust the address of hl to point to the address of the module.

@Deltafire
Copy link
Owner

This is the particular tune I was having difficulty with:

ofc1.cop.zip

I assumed (from reading this) that the eTracker compiler could also compress the song and this particular file was a result of the compression, but looking through the eTracker user manual makes no mention of this. So perhaps ofc1.cop is not an eTracker file at all.

@stefandrissen
Copy link
Author

Interesting, instead of an initialisation routine and a per frame play routine, this only has a per frame play routine which is very different from the normal compiled tune player.

The tune is Axel F - repeatedly call &8000.
The tune is large (14k).
If I compile the source module with E-Tracker then the song including player is 5k:

image

I expect that this is either some kind of pre-release demo version of the song or an optimized for speed playback routine for some demo.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants