MadTracker-FOSS / MadTracker3

Continuation of the MadTracker project, aimed at Windows/Mac/Linux support
Other
39 stars 1 forks source link

Tons of code that is compiler/architecture-specific #3

Open flibitijibibo opened 12 years ago

flibitijibibo commented 12 years ago

There are a crapton of routines/functions/"stuffs" that are written for tons of different architectures, platforms, and even multiple compilers for one platform.

It's time to dispose of this junk.

This is the checklist to resolve this:

The goal is to have 100% of the code work on any platform/architecture. We can't be updating the code or adding another implementation of all these functions every time something new is out, so let's sit down and dispose of all of that. If something was poorly designed to only work on x86, redesign it.

Platform specific code should be limited to things like save directories, or things where the feature is absolutely going to be different on different operating systems.

flibitijibibo commented 11 years ago

This affects MTObjects' compilation, as a couple assembly routines in MTObjectsASM will mess with the ebx register, which -fPIC won't allow.

irrenhaus3 commented 8 years ago

It's probably worth noting that once all the assembly is gone, pretty much every occurence of cdecl, stdcall and other call convention macros like that can go away too. They only exist to determine in which order variables should be placed on the stackframe, which we don't care about if we only use C and C++.