arnaud-carre / LSPlayer

Fastest Amiga Module player ever
MIT License
97 stars 8 forks source link

LightSpeedPlayer.asm is still checking for version 1.04 #5

Closed ericde45 closed 8 months ago

ericde45 commented 2 years ago

hello Arnaud !

running lspconvert.exe gives 0105 version number in bytes 08-09 of the .lsmusic file but LightSpeedPlayer.asm still checks for version 1.04 tag:

        lea     .LSPVars(pc),a3
        cmpi.w  #$0104,(a0)+            ; minimal major & minor version of latest compatible LSPConvert.exe
        blt.s   .dataError

thanks a gain for all your work, ( LSP is going to run on another Atari hardware soon :) )

Eric.

asimilon commented 2 years ago

Does this cause an issue though? Perhaps lspconvert.exe changed to 1.05 without actually changing the stream format and so 1.04 player can deal with it just fine? Without seeing the code for lspconvert.exe we will never know.

ps. Please open source the converter Arnaud, I would happily do whatever work necessary to make it work under macOS, and I'm sure there would be another who would do the same for Linux.

pps. Thanks as well for the work on this regardless, I can live with booting into Windows to convert when necessary until you decide to open up the converter. :)

ericde45 commented 2 years ago

yes, the current version of the LightSpeedPlayer.asm will go to .dataerror, and do a nice illegal when using a 1.05 converted file :) easy to patch :

cmpi.w #$0104,(a0)+ ; minimal major & minor version of latest compatible LSPConvert.exe

becomes

cmpi.w #$0105,(a0)+ ; minimal major & minor version of latest compatible LSPConvert.exe

asimilon commented 2 years ago

oh, yes, of course, I was being an idiot and thought the test was the opposite (which would make no sense, I even thought at the time that it was strange! I evidently still needed way more caffeine even at 2pm 😂)

arnaud-carre commented 2 years ago

are you sure it does illegal? blt is supposed to be less than, so it checks for old files < 1.04. ( 1.04 & 1.05 should be fine )