Hallo allemaal, I disassembled the BlueChip ROM using my auto disassembler. A nice feature is that I can give names to found subroutineson forehand. But using the wrong list with names, like using the list for C64 programs when disassembling a 1541 ROM, one lead to nonsence. In this case I forgot to remove the 1541 list. To my surprise things worked out quite fine. Analyzing the resulting ASM I found that the main routines, the oes that I ched so far, all start at the same address. But how the routine is executed can differ. A nice example: --- 1541: DelDirEntry: ; [C8B6] ldy #$00 ; point to firt byte tya ; set file type to zero sta (DIRBUF),Y --- Blue Chip: DelDirEntry: ; [C8B6] lda #$00 tay sta (DIRBUF),Y ; [94] I found more of these tricks like executing instruction in a different order. A set of instructions like lda #1 ldx #2 ldy #3 can be executed in six different orders and the result will be exactly the same after the third instruction. But when comparing the BIN file on byte level, one will have six different files. The more instructions you can swap in this way, the more differences you will find. And when using tricks like in the first example, you will get more differences while the result at the end is exactly the same. To be continued..... -- Kind regards / Met vriendelijke groet, Ruud Baltissen www.Baltissen.orgReceived on 2020-05-29 22:04:32
Archive generated by hypermail 2.3.0.