Home |
Search |
Today's Posts |
#1
![]() |
|||
|
|||
![]()
I realize there is probably no one who cares anymore but I have always
had an interest in the firmware in the DR-200's of which I ran a couple back in the early days of Packet. I alwyas thought the "Howie Code" was a good routing system that never got a fair shake. Now that I have thouroughly torqued off all the people who loved NetROM instaid :-), let me continue..... I have always wanted to play with the code to explore its possibilities. I have tried contacting Howie Goldstein N2WX with no luck. I contacted PACCOMM who agreed to search for the sourcecode for the firmware. I never heard back (after three attempts over a period of several years) so I assume they no longer even have a copy. That leaves only one option. I plan to reverse engineer it. :-) Will definitely be a "clean room" job as it appears I couldn't see the original source if my life depended on it. :-) So, in case there is at least one person here who might know, what language was this written in? Most likely candidate is Z80 Assembler but given the period during which it was done, it could also have been done in Pascal or C. Knowing this will make hand dis-assembling it a little bit easier. I know it seems a futile task with little ROI but, after all, this is supposed to be a hobby so why not do the things we find to be fun? :-) bill KB3YV -- Bill Gunshannon | de-moc-ra-cy (di mok' ra see) n. Three wolves | and a sheep voting on what's for dinner. University of Scranton | Scranton, Pennsylvania | #include std.disclaimer.h |
#2
![]() |
|||
|
|||
![]()
On 11/5/2013 9:40 AM, Bill Gunshannon wrote:
I realize there is probably no one who cares anymore but I have always had an interest in the firmware in the DR-200's of which I ran a couple back in the early days of Packet. I alwyas thought the "Howie Code" was a good routing system that never got a fair shake. Now that I have thouroughly torqued off all the people who loved NetROM instaid :-), let me continue..... I have always wanted to play with the code to explore its possibilities. I have tried contacting Howie Goldstein N2WX with no luck. I contacted PACCOMM who agreed to search for the sourcecode for the firmware. I never heard back (after three attempts over a period of several years) so I assume they no longer even have a copy. That leaves only one option. I plan to reverse engineer it. :-) Will definitely be a "clean room" job as it appears I couldn't see the original source if my life depended on it. :-) So, in case there is at least one person here who might know, what language was this written in? Most likely candidate is Z80 Assembler but given the period during which it was done, it could also have been done in Pascal or C. Knowing this will make hand dis-assembling it a little bit easier. I know it seems a futile task with little ROI but, after all, this is supposed to be a hobby so why not do the things we find to be fun? :-) bill KB3YV Bill, I don't know, but my guess would be C. If you're familiar with the code generated by the typical C compiler (back then there weren't as many optimizations as today, so it should be easier), then a bit of disassembly should give a pretty good idea if it is C or not. It's possible that it is PASCAL, I guess, but I doubt it. PASCAL is a great tool for learning, but it's overly strict rules make it less common as a production language. It also typically generates larger executables, and is less generally less useful as an OS. Z80 assembler would also be a possibility, but it would be quite a bit harder to code than a higher level language. Even though memory was much less dense and more expensive back then, I think even C could be used to generate the code. IIRC, the code for the TAPR TNC-2 was written in C, for instance. -- ================== Remove the "x" from my email address Jerry, AI0K ================== |
#3
![]() |
|||
|
|||
![]()
In article ,
Jerry Stuckle writes: On 11/5/2013 9:40 AM, Bill Gunshannon wrote: I realize there is probably no one who cares anymore but I have always had an interest in the firmware in the DR-200's of which I ran a couple back in the early days of Packet. I alwyas thought the "Howie Code" was a good routing system that never got a fair shake. Now that I have thouroughly torqued off all the people who loved NetROM instaid :-), let me continue..... I have always wanted to play with the code to explore its possibilities. I have tried contacting Howie Goldstein N2WX with no luck. I contacted PACCOMM who agreed to search for the sourcecode for the firmware. I never heard back (after three attempts over a period of several years) so I assume they no longer even have a copy. That leaves only one option. I plan to reverse engineer it. :-) Will definitely be a "clean room" job as it appears I couldn't see the original source if my life depended on it. :-) So, in case there is at least one person here who might know, what language was this written in? Most likely candidate is Z80 Assembler but given the period during which it was done, it could also have been done in Pascal or C. Knowing this will make hand dis-assembling it a little bit easier. I know it seems a futile task with little ROI but, after all, this is supposed to be a hobby so why not do the things we find to be fun? :-) bill KB3YV Bill, I don't know, but my guess would be C. If you're familiar with the code generated by the typical C compiler (back then there weren't as many optimizations as today, so it should be easier), then a bit of disassembly should give a pretty good idea if it is C or not. Actually, I was looking at it the other way around. If I know it was C then I know what to look for but trying to guess based onthe code is not as promising. (It was not only C that used null-terinated strings.) It's possible that it is PASCAL, I guess, but I doubt it. PASCAL is a great tool for learning, but it's overly strict rules make it less common as a production language. It also typically generates larger executables, and is less generally less useful as an OS. The TNC-1 was done in Pascal, I thought. Well, a mix of Pascal and assembler using an HP Cross-Compiler. Yes? And Pascal was quite common on CP/M which would have provided a nice cross-development environment for the Z80. Z80 assembler would also be a possibility, but it would be quite a bit harder to code than a higher level language. Even though memory was much less dense and more expensive back then, I think even C could be used to generate the code. IIRC, the code for the TAPR TNC-2 was written in C, for instance. Hmmm.. I never looked at it but I always assumed it was straight Z80 assembler. Guess I really won't know until I start disassembing it. :-) bill KB3YV -- Bill Gunshannon | de-moc-ra-cy (di mok' ra see) n. Three wolves | and a sheep voting on what's for dinner. University of Scranton | Scranton, Pennsylvania | #include std.disclaimer.h |
#4
![]() |
|||
|
|||
![]()
Jerry Stuckle wrote:
I don't know, but my guess would be C. If you're familiar with the code generated by the typical C compiler (back then there weren't as many optimizations as today, so it should be easier), then a bit of disassembly should give a pretty good idea if it is C or not. Z80 assembler would also be a possibility, but it would be quite a bit harder to code than a higher level language. Even though memory was much less dense and more expensive back then, I think even C could be used to generate the code. IIRC, the code for the TAPR TNC-2 was written in C, for instance. I remember coding for the Z80. To get the best performance out of it, using assembly was really required. But of course it could be assembly for the lowest levels and C for the higher level code. As you write, it should be easy to see if a HLL was used or if it is handcrafted assembly, just by looking at fragments of code. There are also other options. In those days I coded a large program for the Z80 using a couple of Aztec C products. There was a native code generating compiler, and one that generated p-code for a machine more suitable to execute C code. It existed only for the 6502 (and maybe for the 8080), but I wrote an efficient p-code interpreter for the Z80. The program consisted of a low level in assembly, some often used functions in C compiled to native code, and the bulk of user interface code in C compiled to p-code and interpreted. It was really amazing how many lines of C could be crammed in 32K this way. Probably more than when using assembly everywhere. |
Reply |
Thread Tools | Search this Thread |
Display Modes | |
|
|
![]() |
||||
Thread | Forum | |||
Vonage Firmware | Scanner | |||
KPC-4 Firmware | Digital | |||
PK-88 Firmware | Digital | |||
PK-88 Firmware | Digital | |||
RX-350 firmware | Shortwave |