Arkos Tracker 2

Page 1/4
| 2 | 3 | 4

By Wlcracks

Champion (326)

Wlcracks's picture

04-01-2019, 20:22

http://www.julien-nevo.com/arkostracker/

Anyone used the player asm's on MSX?
The editor looks awesome, I hope undo works soon too...

Login or register to post comments

By Grauw

Ascended (8457)

Grauw's picture

05-01-2019, 14:17

Chibi Akumas uses ArkosTracker. Probably several others too.

I did hear that the replayer code uses undocumented Z80 instructions like “OUT (C),0” which don’t work on the turboR’s R800, as well as self-modifying code which won’t work in a ROM game. So it probably needs some modifications for MSX, though that doesn’t sound particularly difficult, and probably it needs some changes to compile on your assembler anyway. Just something to be aware of.

Oh, and on the players page of the website it says:

Quote:

Platform interoperability?

Phrased differently: can a song exported in a PSG of 1000000 Hz (like on an Amstrad CPC) sounds well on a Spectrum? It depends mostly on the player, and a bit on the song:

  • AKY encodes all periods, software and hardware. So it will sound very different from a platform to another. You should export the song once again, targeting the right PSG frequency.
  • AKG and Lightweight songs are composed of notes, not period. So in theory, the song can be directly used to another platform. However, pitch effects are period-based, so they will sound differently.

Morality: listen to the song on the real hardware, or load the song in AT2 and set the PSG according to the hardware your are using. Correct the pitch effects/tables if needed!

By Wlcracks

Champion (326)

Wlcracks's picture

05-01-2019, 14:53

Thank you for responding
He is using v2 or v1? V2 has "just" been released, that's why I am asking here. I could not find anything on the release on the msx.org forums.

I tried the playerakgtester_msx-asm included, but it refused to exit correctly. Maybe I am overlooking something, but it lockup after [space]. I tried looking for the obvious like a wrong ret, jp or compile at higher or lower address, but could not find an error at glance. Because I am not using the MSX 365 days a year, maybe I just overlooked something simple.

The frequencies worked fine at the example for MSX.
Please send me an turbo-r and I will report if it works :-)

http://www.julien-nevo.com/arkostracker/index.php/forums/top...

By Grauw

Ascended (8457)

Grauw's picture

05-01-2019, 15:32

Wlcracks wrote:

Please send me an turbo-r and I will report if it works :-)

Or just test in openMSX Wink.

Anyway I just glanced at the code and I don’t see any out (c),0, so maybe that was AT v1 or some other tracker. I don’t see why it would hang, but you could use the openMSX debugger to figure it out. Code sure is complicated though with all those defines. Requires quite a bit of stripping if you don’t want to be forced to use that Rasm assembler.

By Pencioner

Paladin (955)

Pencioner's picture

05-01-2019, 15:42

@Grauw I can confirm that Arkos Tracker 2 uses self-modifying code in replayer. Also, you need to DI before calling replayer because it also changes SP to do some optimizations (changes SP, pops values quickly, then recovers SP)

By Wlcracks

Champion (326)

Wlcracks's picture

09-01-2019, 20:02

I guess the example works now:
http://www.julien-nevo.com/arkostracker/index.php/forums/top...

Now get this thing running in glass.

By Grauw

Ascended (8457)

Grauw's picture

09-01-2019, 21:40

Guess either take this approach or strip out all of those Rasm IFDEFs…

About the hang:

    ei
    halt

The ei instruction has a 1-instruction delay for activating the interrupts. So the interrupts are only enabled after the halt and thus it will wait indefinitely.

This will work:

    ei
    nop
    halt

By Wlcracks

Champion (326)

Wlcracks's picture

10-01-2019, 07:47

Thank you for the tips, the player code gives me an headache. My project target will be in (Mega?)ROM and 16k RAM and the complete code player code Arkosplayer 2 is more then 4k in RAM. To start off from scratch is to much RAM gone left for the project itself. Self-Modifying code from 3rd party is a pain to insert in a project.
The music writing software Arkos Tracker 2 on the pc/mac is the best i could find though for PSG and still in development. PT3 player has a nice asm player but the editing software is old and clunky. I used that in my little demo yab-yum.
I still think a stock MSX1 16k with a megarom is the way to go in development 2019 Tongue

By Grauw

Ascended (8457)

Grauw's picture

10-01-2019, 10:29

LOL!

Keith from ChibiAkumas put a video on Patreon on exactly the topic of removing the self modifying code from the Arkos player and making it run from ROM! I think it will appear on his Youtube channel at some point as well, but I don't think it's public yet. Could consider backing him for a buck, he makes a lot of programming videos.

By Wlcracks

Champion (326)

Wlcracks's picture

10-01-2019, 10:36

well doing the "program" in glass and using the wrapper technique in rasm pointed out
it works:

AT2 test in webmsx

But yeah in RAM, just a block move in ROM.
I need to think how to use this, hurts. Thanks again.

By Wlcracks

Champion (326)

Wlcracks's picture

10-01-2019, 19:24

now with cursor keys 4 sfx

AT2 test in webmsx

Page 1/4
| 2 | 3 | 4