From: Todd Elliott (eyeth_at_videocam.net.au)
Date: 2003-10-10 16:23:02
On Fri, 10 Oct 2003, Maciej Witkowiak wrote: > What else would be needed besides unpacking .cvt file into header+seq or > header+vlirs? The latter case is tricky because without analysing the code of > the first chain you never know what are load addresses for all the other chains. > Hello, Maciej- The DA65 disassembler would need to get the start address from the header as a starting PC value for both sequential GEOS files and VLIR #0 of VLIR GEOS files. As for disassembling GEOS VLIR files, maybe the user could specify (pass via command line argument?) a starting PC value for the VLIR records (#1-126) in a GEOS VLIR file being disassembled? If the user does not pass a value, perphaps a default starting value of $0000 should be used. Also, I'd like to have the ability to do a targeted VLIR record disassembly. Let's say I want to disassemble VLIR #3 of a GEOS VLIR file. I happen to know the starting PC address, so I supply this value. I'd like DA65 to do this, generating a disassembled source code file only for VLIR #3 and nothing else. What I would love to see from a disassembler with respect to GEOS sequential and VLIR files is this: The disassembly output for GEOS sequential files would be split into two source code files; One for the header and one for the main code. For GEOS VLIR files, the disassembly output would be split into seperate source code files for the header, individual VLIR records, etc. So, if a GEOS VLIR file had ten VLIR records, I'd like to see ten seperate source code files corresponding to each VLIR record, in addition to a source code file for the header. As with either disassembly done under DA65, I'd like to have a .CFG file or something similar where I could immediately compile it under CA65 to ensure that the disassembly worked. (I'd compare the new compiled program against the original under a file compare utility.) Lastly, I would like for DA65 to have support for GEOS address labels (r0..r15, etc.) and GEOS function call labels (SetDevice, OpenDisk, etc.) into the disassembled source code output. (No GEOS constant labels should be used, though.) This way, I could easily patch GEOS programs, by simply going through the entire source, fixing code here and there. I recently patched geoList v2.1 for 4-drive support, and I used CA65 for only a small snippet of source code. I then used a hex editor to insert this small snippet directly into the geoList .CVT file, tested it under VICE emulator, repeated as necessary. This has been somewhat tedious, as I have to insert code manually into the geoList .CVT file everytime I need to make a change. Am I asking for too much? I hope it is feasible for DA65 to support disassembly of GEOS files. It will make for quicker and more productive GEOS development. Enjoy. -- Todd Elliott ---------------------------------------------------------------------- To unsubscribe from the list send mail to majordomo_at_musoftware.de with the string "unsubscribe cc65" in the body(!) of the mail.
This archive was generated by hypermail 2.1.3 : 2003-10-10 16:25:21 CEST