Page 1 of 1

The SMAC bugfix thread

Posted: Wed Dec 31, 2014 7:19 am
by a31chris
Thanks to Chilly Willy he has squished the SMAC bug that stops it from dealing with the .IF expression properly:
The expression evaluator wasn't handling the attributes for ANY of the comparisons correctly (i.e., the same as subtraction, which is all comparisons really are). The modified expr.c file for smac can be found here:
expr.zip
Bugfixed expr.c file for SMAC. When compiling SMAC be sure to force it into 32 bit mode on compile. The source is not yet 64 bit friendly.
(3.99 KiB) Downloaded 378 times

SMACs 64bit problems

Posted: Thu Jan 01, 2015 7:55 pm
by a31chris
Layout of some of the problems needing fixed for Smac to make it 64bit friendly courtesy of Chilly Willy:
Smac segfaults at different places depending on the source (sometimes it makes it through just fine), and when I look at it in gdb, the symbol table has nonsense pointers in it. Looking at the source, the code mostly assumes that pointers are the same as ints. Smac uses "unsigned long" which is 64-bit on 64-bit systems, but it still treats this type of var like it was 32-bit (especially in the token code).

Re: The SMAC bugfix thread

Posted: Fri Jan 02, 2015 12:57 am
by a31chris
Smac with Typo bugfix and sources. DOES NOT include the Chily Willy bugfix. Still not 64bit friendly. Make sure to compile in 32 bit.

SMAC version 1.0.18

Posted: Fri Jan 02, 2015 2:51 am
by a31chris
This source version contains Dr. Typos bugfix and Chilli Willys bugfix.

SMAC 1.0.18 32 bit Windows Binary

Posted: Wed Jan 07, 2015 8:59 am
by a31chris
Here's the binary
smac.exe.zip
Smac 1.0.18 Windows 32bit build.
(47.4 KiB) Downloaded 393 times

Re: SMAC 1.0.18 32 bit Windows Binary

Posted: Sat Jan 24, 2015 6:16 am
by a31chris
a31chris wrote:Here's the binary
smac.exe.zip
I am having trouble with this version on 32bit windows xp. I keep getting 'this is not a valid win32 application, access denied'.

I am going to try and figure it out.

Re: The SMAC bugfix thread

Posted: Fri Feb 13, 2015 9:55 pm
by a31chris
It appears the above smac binary when compiled with Visual Studio puts hooks into it making it incompatible with anything older than Vista. I hate that monopolistic crap.

Re: The SMAC bugfix thread

Posted: Tue Feb 17, 2015 5:53 am
by flynn
a31chris wrote:It appears the above smac binary when compiled with Visual Studio puts hooks into it making it incompatible with anything older than Vista. I hate that monopolistic crap.
Thank you for this information. I'm back from my travel and I will check the Visual Studio options to see if there are possibilities to have better compatibilities

Re: The SMAC bugfix thread

Posted: Tue Feb 17, 2015 6:54 pm
by a31chris
flynn wrote:
a31chris wrote:It appears the above smac binary when compiled with Visual Studio puts hooks into it making it incompatible with anything older than Vista. I hate that monopolistic crap.
Thank you for this information. I'm back from my travel and I will check the Visual Studio options to see if there are possibilities to have better compatibilities
Welcome back!

Don't worry about this. I will see if I can fix the makefile. Not a worry. Otherwise I will have Orwell take a crack at compiling it. I had not thought about that. I had it compile Jserve which it barfed on.

Re: The SMAC bugfix thread

Posted: Thu Feb 19, 2015 4:59 am
by flynn
a31chris wrote:
flynn wrote:
a31chris wrote:It appears the above smac binary when compiled with Visual Studio puts hooks into it making it incompatible with anything older than Vista. I hate that monopolistic crap.
Thank you for this information. I'm back from my travel and I will check the Visual Studio options to see if there are possibilities to have better compatibilities
Welcome back!

Don't worry about this. I will see if I can fix the makefile. Not a worry. Otherwise I will have Orwell take a crack at compiling it. I had not thought about that. I had it compile Jserve which it barfed on.
Ok, I have found a couple options to handle in the VS 2013 project. When properly set, it should make executable XP compatible. I'm going try this solution.

Re: The SMAC bugfix thread

Posted: Fri Feb 20, 2015 6:50 am
by a31chris
OK Flynn if you wish. :)

I am going to try converting the Cygwinn makefile to mingw compatibility anyways. Good practice. I suck at complex makefiles.

Re: The SMAC bugfix thread

Posted: Sat Feb 21, 2015 4:49 pm
by flynn
a31chris wrote:OK Flynn if you wish. :)

I am going to try converting the Cygwinn makefile to mingw compatibility anyways. Good practice. I suck at complex makefiles.
Could you try this executable? I have used the new options with Visual studio C++ 13. It should work on Windows XP now.
Do you know if Chilliy Willy will fix the issue reported from Atari Age forum?

Re: The SMAC bugfix thread

Posted: Sat Feb 21, 2015 6:14 pm
by a31chris
flynn wrote:
a31chris wrote:OK Flynn if you wish. :)

I am going to try converting the Cygwinn makefile to mingw compatibility anyways. Good practice. I suck at complex makefiles.
Could you try this executable? I have used the new options with Visual studio C++ 13. It should work on Windows XP now.
Do you know if Chilliy Willy will fix the issue reported from Atari Age forum?
I will check this out. Also check your PM's.

Re: The SMAC bugfix thread

Posted: Sat Feb 21, 2015 6:54 pm
by a31chris
flynn wrote:
a31chris wrote:OK Flynn if you wish. :)

I am going to try converting the Cygwinn makefile to mingw compatibility anyways. Good practice. I suck at complex makefiles.
Could you try this executable? I have used the new options with Visual studio C++ 13. It should work on Windows XP now.
YES IT DOES. It works. Thank you.

Re: The SMAC bugfix thread

Posted: Sat Feb 21, 2015 7:17 pm
by flynn
a31chris wrote:
flynn wrote:
a31chris wrote:OK Flynn if you wish. :)

I am going to try converting the Cygwinn makefile to mingw compatibility anyways. Good practice. I suck at complex makefiles.
Could you try this executable? I have used the new options with Visual studio C++ 13. It should work on Windows XP now.
YES IT DOES. It works. Thank you.
Good, so I have applied the same treatment to JCP2 and jserve. Both tools have been added in their respective threads on the forum.