Reverse engineering IRIX: The beginning.
#12
RE: Reverse engineering IRIX: The beginning.
A lot of the code here is not really consistent and a significant reason was I took about three or four breaks weeks long on it and a lot of the coding style has been inherited from whatever I was working on around the same time.

There were three things that we did to ensure compatibility with the original library:

1. My colleague documented every function extensively and even gave me advice on starting points as well as examples written in pseudocode on how I should tackle these things

2. As I built every function I passed the code to him and he would verify functionality being identical to the original code and if it wasn't he would explain to me what they were doing differently. This explains a lot of the strangeness especially around some of the string handling.

3. A lot of weirdness of this is because of this being basically early 90s C++ before C++98 was a standard.

My colleague is under the strong impression that the original library was actually written in C before being tacked on with C++ elements and that a lot of it was written by multiple people and thus a significant reason for the weirdness of the code. I certainly would not have done things the way that the original authors did. Our first stage was to match functionality, then I corrected code and warnings and various small bugs.

I'm going to be taking a break from this, but when I come back my primary goal will be to move a lot of this code to proper C++ and see if we can get a functional FAM daemon built from this. I probably put close to 100 hours between me and my colleague on this project and while it was definitely fun there were a lot of stressful aspects of it. This is kind of a nondescript part of the OS but something that I was very interested in seeing brought to light.

One person cannot reverse engineer the OS at this rate, it would take me an eternity even if I become a master at doing this. However I'm going to press on with doing what I can and where I can't reverse engineer I will hopefully be able to pass the torch to somebody who's smarter than I am.

I'm the system admin of this site. Private security technician, licensed locksmith, hack of a c developer and vintage computer enthusiast. 

https://contrib.irixnet.org/raion/ -- contributions and pieces that I'm working on currently. 

https://codeberg.org/SolusRaion -- Code repos I control

Technical problems should be sent my way.
Raion
Chief IRIX Officer

Trade Count: (9)
Posts: 4,246
Threads: 534
Joined: Nov 2017
Location: Eastern Virginia
Website Find Reply
12-29-2021, 04:36 PM


Messages In This Thread
Reverse engineering IRIX: The beginning. - by Raion - 12-27-2021, 04:45 AM
RE: Reverse engineering IRIX: The beginning. - by Raion - 12-28-2021, 03:00 AM
RE: Reverse engineering IRIX: The beginning. - by TruHobbyist - 12-28-2021, 08:12 AM
RE: Reverse engineering IRIX: The beginning. - by Raion - 12-28-2021, 03:46 PM
RE: Reverse engineering IRIX: The beginning. - by Raion - 12-28-2021, 06:30 PM
RE: Reverse engineering IRIX: The beginning. - by jpstewart - 12-28-2021, 09:14 PM
RE: Reverse engineering IRIX: The beginning. - by Raion - 12-28-2021, 09:20 PM
RE: Reverse engineering IRIX: The beginning. - by jan-jaap - 12-28-2021, 10:26 PM
RE: Reverse engineering IRIX: The beginning. - by Raion - 12-28-2021, 11:00 PM
RE: Reverse engineering IRIX: The beginning. - by Raion - 12-29-2021, 02:42 AM
RE: Reverse engineering IRIX: The beginning. - by TruHobbyist - 12-29-2021, 12:19 PM
RE: Reverse engineering IRIX: The beginning. - by Raion - 12-29-2021, 04:36 PM
RE: Reverse engineering IRIX: The beginning. - by weblacky - 12-29-2021, 09:44 PM
RE: Reverse engineering IRIX: The beginning. - by Raion - 12-29-2021, 09:58 PM

Forum Jump:


Users browsing this thread: 1 Guest(s)