News:

Herr Otto Partz says you're all nothing but pipsqueaks!

Main Menu
Menu

Show posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Show posts Menu

Messages - llm

#376
Stunts Related Programs / Re: Freedos usb stick?
August 03, 2020, 01:51:00 PM
Quote from: Daniel3D on August 03, 2020, 01:27:05 PM
That's sounds reasonable. We could update the version number to 1.2 or something so it is clearly something new.

ok - will take a look what is needed

Quote from: Daniel3D on August 03, 2020, 01:27:05 PM
(I've done that in my testing copy.  8) just because I can )

"Once you start down the dark path, forever will it dominate your destiny, consume you it will."
#377
Stunts Related Programs / Re: Freedos usb stick?
August 03, 2020, 12:08:52 PM
QuoteSo, if i understand correctly it is very difficult to remove the copy protection from the original file without using execombiner to make a new executable.

correct

the freeware edition would have changes in serveral files and setup is then dead

we could have serveral executables and our own stunts.com (using setup.dat for configuration calling the correct game executable with correct parameters) - but then is maybe more like an "extended" edition

#378
is the obj format capable to handle the texture stuff like the Background Image - i also got the feeling that parts of the race track pieces needs texturing - like tunnels?
#379
Quote from: Cas on August 03, 2020, 06:50:12 AM
Currently, in my renderer, I'm using floating point numbers, but I'm doing that because it's not opitmised. Once it works, I can switch to fixed-point math and assembler-drawn triangles to make it run faster, although I'm surprised about how fast it already works considering it's so much non-optimal code!  The guys at FreeBasic forum suggested at some point I should not use fixed-point math, that it's a thing of the past, etc. Some people say the same about assembly language. I don't know... I suppose it depends on what you feel like doing today, ha, ha.... as long as it works and you enjoy doing it!  But yes, most options, I'd like to try them.

there is a real need to use opengl, floating point and NO assembler if you want to make the engine public available and useable for others
everything else is just too much a thing of the past - also completely ignoring the not that-optimal (opcode)code that the freebasic compiler generates :)
(buts its still able to generate dos executeables - but there is also a gcc 10/djpp version that can be used for 32bit dos executables :) - but you seem not to be a C/C++ fanboy)

but still a good tutorial for from-the-scratch maker like these videos:
Code-It-Yourself! 3D Graphics Engine Part #1 - Triangles & Projection https://www.youtube.com/watch?v=ih20l3pJoeU
Code-It-Yourself! 3D Graphics Engine Part #2 - Normals, Culling, Lighting & Object Files https://www.youtube.com/watch?v=XgMWc6LumG4
Code-It-Yourself! 3D Graphics Engine Part #3 - Cameras & Clipping https://www.youtube.com/watch?v=HXSuNxpCzdM
Code-It-Yourself! 3D Graphics Engine Part #4 - Texturing & Depth Buffers https://www.youtube.com/watch?v=nBzCS-Y0FcY

asm or fix-point float is only needed if you want to support systems of the age of stunts itself (<= 80186) - every Pentium1 class cpu can easily handle the math and drawing of stunts demands in software without any inline asm - todays cpus are just dying in agony while waiting for the user input - if the generated code is not too bad :)
#380
I dont understand that GNU obj under windows problem, all that is needed is \r\n(windows), \n(linux) or \n\r(old macs?) awareness, same goes to xml
#381
Stunts Related Programs / Re: Freedos usb stick?
August 03, 2020, 07:13:16 AM
Quote from: Cas on August 03, 2020, 07:04:15 AM
If im right about the previous thing, then unpacking load.exe and precombining it with the MCGA driver, which is the only graphics driver we really use and then running that final executable file, without needing to recompress it, would yield a normal EXE file that would not do weird things in memory. Can that be done?  I really haven't read restunts in much detail. Maye all this is already thought of.

Thought out and working for the last decade :) that is what the execombiner from the restunts project does, that is the base for all reverse engineering analysis

svn://anders-e.com/restunts/trunk/restunts/src/execombiner (uses https://github.com/dstien/gameformats/tree/master/stunts/stunpack)
other implementation: https://github.com/w4kfu/Stunts/tree/master/makegame

the drvcombiner goes even further and integrates a selected sound driver into the exe
svn://anders-e.com/restunts/trunk/restunts/src/drvcombiner

an svn client is needed for the svn:// repos - like subversion on command line or for example TortoiseSvn

all that is done to ease the analyze process with IDA or Ghidra - something that is very hard using this high dynamical behaving load.exe
#382
Stunts Related Programs / Re: Freedos usb stick?
August 03, 2020, 07:06:14 AM
Thx, i forgott that the combined result is also exepacked, makes it even harder to reach just C
(more then 10 years since ive worked on the load.exe analyzation...)

load.exe combines stuntspacked files which results in a in memory game executable that itself is exepacked, its easy to patch the protection in the end result, but very hard in the starting components


#384
Stunts Related Programs / Re: Freedos usb stick?
August 02, 2020, 10:28:52 PM
There is another problem with C

To remove the copy protection the files that get combined in memory with load.exe needs to be unpacked using https://github.com/dstien/gameformats/tree/master/stunts/stunpack
, patched to unprotected - its not clear if  load.exe can handle unpacked files or if the files need to get repacked - i don't know an implementation for packing, only for unpacking
#385
Stunts Related Programs / Re: Freedos usb stick?
August 02, 2020, 07:18:46 PM
Quote from: Daniel3D on August 02, 2020, 07:11:21 PM
Option A doesn't feel right. It fixes the problem but a crack is still needed.

Option B is kind of what restunts does. So we already have that.

Option C is most appealing to me as it fixes the issue and the need for a crack.

Of course this all only matters if you want to play without emulator.

A is the least changing, only load.exe gets modified, setup still works
B is the one with the most new executeables, no changes, setup does not work with these you need to configure sound setting via commandline
C is the one with most changed files: .cod, load.exe, etc., setup still works
#386
Stunts Related Programs / Re: Freedos usb stick?
August 02, 2020, 03:42:03 PM
QuoteYou mean a repack of the original files that are clean but keeping as much in tact as possible (except copy protection) ?

A: at least the EXEPack unpacked load.exe (if that still work with stunts_k.exe for unprotecting?)
the unpacked load.exe just removes the buggy unpacking stub and does not change any code of the game

B: or using the execombiner versions: but then you need a game_mcga.exe,game_cga.exe etc. one excutable for each grafix setup (cga/ega/tandy/mcga)
and the stunts.com, setup.exe is then not useable/needed anymore

C: unpack the load.exe, unpack the code-files, remove copy protection and compress the files again to be useable with load.exe

#387
Stunts Related Programs / Re: Freedos usb stick?
August 02, 2020, 11:36:46 AM
the primary problem that there is no clean official package that solves such problems for everyone - time to speak to Kalpen to update the package :)
#388
Stunts Related Programs / Re: Freedos usb stick?
August 02, 2020, 11:21:33 AM
Its an EXEPack Bug - official and well known by Microsoft: https://jeffpar.github.io/kbarchive/kb/072/Q72360/
using loadfix is a Microsoft tip to prevent this EXEPack Bug - but that does not work if used on stunts.com only on load.exe will help

PROVE!!: https://pasteboard.co/JktVtei.png - so you're right Cas it is something from the Hardware - good old A20 Gate :)

https://www.bamsoftware.com/software/exepack/ (there is also a windows exe available for unpacking)

QuoteA20 bug?
"yes" means the stub relies on 8086-style 20-bit address wraparound; i.e., it requires the address fff0:0123 to map to the linear address 0x23, not 0x100000023. Stubs with this bug may falsely error out with "Packed file is corrupt" when run at a low address in memory.

http://www.os2museum.com/wp/exepack-and-the-a20-gate/

Quoteclearly points at the real problem: "The Gate A20 signal is in the wrong state after the system is booted."

some versions of EXEPack did not suffer from this problem

easily to fix by unpacking the exe - its easy and does not change anything in the game - the original developers also runned the EXEPack Tool AFTER creating the exe from source - to make it smaller - we just revert this process and remove the buggy unpacker from the original file
#389
Stunts Related Programs / Re: Freedos usb stick?
August 02, 2020, 11:10:40 AM
Solution!!!

the load.exe itself is packed with EXEPACK (an old executable compressor from Microsoft)
unpacking it with unp (http://unp.bencastricum.nl/) makes it startable under FreeDos (maybe also under DOS)

normal start of stunts works like this


1. load & run stunts.com
2.   load & run load.exe(EXEPACK unpack)
3.     combines some files from stunts (also unpack them with an stunts unpack algorithm)
4.       start game in memory


or use the execombiner exe which is just

1. load & run game

:)


#390
Stunts Related Programs / Re: Freedos usb stick?
August 02, 2020, 10:51:05 AM
stunts.com is only a starter for load.exe
does it also happen if you start stunts with "load.exe /u MCGA  /spc" - UPDATE: yes it does

so its the load.exe that make the problem - not stunts.com, not stunts_k.exe