• APW C 1.0B4 ...suggestions....anyone?

    From Enrico@21:1/5 to All on Mon Jun 14 01:56:55 2021
    Hi,
    I'm using 6502bench SourceGen to disassemble a program that was compiled with an unknown APW C version.
    I'm relying on CiderPress disassembler capability to look into APW's CLIB because, being a library, it has no relocation information and most disassemblers that I've tried won't deal with it. (do you have any suggestions on that topic?)
    Well, I'm trying to match CLIB function signatures inside my program, and I need to find out the exact version of the CLIB that was used to build it. I've had a partial success with the CLIB from APW C 1.0B7.
    Now I'm searching for APW C version 1.0B4, and possibly earlier versions like 1.0B1 that was released, too.
    Also, any other beta versions that you might offer would be highly appreciated.

    Thank you

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From fadden@21:1/5 to Enrico on Tue Jun 15 08:05:47 2021
    On Monday, June 14, 2021 at 1:56:57 AM UTC-7, Enrico wrote:
    I'm relying on CiderPress disassembler capability to look into APW's CLIB because, being a library, it has no relocation information and most disassemblers that I've tried won't deal with it. (do you have any suggestions on that topic?)

    To disassemble a IIgs load file (S16, EXE, PIF, etc), one needs to replicate the system loader behavior. To disassemble a IIgs OBJ or LIB file, one also needs to replicate linker behavior. The SourceGen OMF converter only acts like a loader.

    One thing you might try is to write a simple program that references every function in the library, compile and link it into an EXE, and disassemble that. A simple table of function pointers ought to cause the linker to pull in the functions. Assuming
    that works, then depending on how everything gets laid out in the binary, creating it as an array of {pointer, "name"} structs might help keep things straight while poking around.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Kelvin Sherlock@21:1/5 to All on Tue Jun 15 20:58:24 2021
    You can use APW DumpObj or ORCA DumpObj or MPW DumpObjIIgs to disassemble
    CLIB. The DumpObjii do a decent job for intermediate OMF object files
    (because they're not yet relocated).

    -------
    ProLine: kelvin@pro-kegs

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Enrico@21:1/5 to All on Fri Jun 18 11:01:09 2021
    Thank you for your suggestions, I'm going to try both and will let you know.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Antoine Vignau@21:1/5 to All on Fri Jun 18 11:45:58 2021
    Hi Enrico,
    files at http://www.brutaldeluxe.fr/apw/
    Please share the disk image with the program you want to disassemble, I can help.
    Cheers,
    Antoine

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Enrico@21:1/5 to All on Fri Jun 18 12:27:35 2021
    Hello Antoine,

    that page is giving me a 404

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From alchemist@21:1/5 to All on Fri Jun 18 23:30:53 2021
    Le vendredi 18 juin 2021 à 21:27:37 UTC+2, Enrico a écrit :
    Hello Antoine,

    that page is giving me a 404


    Correct link is :

    http://www.brutaldeluxe.fr/public/apw/

    Thank you so mutch Antoine :-()

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Antoine Vignau@21:1/5 to All on Sat Jun 19 01:15:44 2021
    Oops, yes, sorry, the link is http://www.brutaldeluxe.fr/public/apw/
    av

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Enrico@21:1/5 to All on Thu Jun 24 23:36:53 2021
    Il giorno sabato 19 giugno 2021 alle 10:15:46 UTC+2 ntn.v...@gmail.com ha scritto:
    Oops, yes, sorry, the link is http://www.brutaldeluxe.fr/public/apw/
    av


    Thank you, this is really useful. I can see a lot of updated versions in there. Unfortunately there's no earlier version than 1.0B7 for APW C. I'm still looking for that, if anyone can help-..............

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From James Hall [VE3MYZ] FN25dj. 73@21:1/5 to Enrico on Fri Jun 25 10:31:26 2021
    I see two possible solutions;

    http://www.byteworks.us/Byte_Works/Morgue_files/CPW.img
    I think this is a small-c version.

    and the disk labeled ; "0298 APW - C - Workdisk, Exsamples.po" from the brutal deluxe archive.

    This is the earliest C compiler i have seen for the IIGS. Pre-dates APW-C. Not sure why it's labeled as APW-C.

    The release notes mention it as the MegaMax C compiler. Was used as a ADTS pre-release system inside apple before APW-C.
    Byteworks APW-C is a totally different system.

    Hope this helps.

    james


    On Thursday, June 24, 2021 at 11:36:54 p.m. UTC-7, Enrico wrote:
    Thank you, this is really useful. I can see a lot of updated versions in there. Unfortunately there's no earlier version than 1.0B7 for APW C. I'm still looking for that, if anyone can help-..............

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From James Hall [VE3MYZ] FN25dj. 73@21:1/5 to All on Fri Jun 25 16:24:14 2021
    Taking a look at the files from Antoine,

    D3_APWC1.0B7_19870414_ERR
    &
    0127 APW - C-compiler

    Both have Version 1.0 of CLIB.
    D3_APWC1.0B7_19870414_ERR, Has significant CLIB differences to 0127 APW - C-compiler CLIB.


    Some the other CLIB's are as you mention. v1.0.b8. Some i have not been able to get a version # on.

    Hope this helps.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)