Renegade Projects Network Forums
Handwritten assembler - Printable Version

+- Renegade Projects Network Forums (https://forums.renegadeprojects.com)
+-- Forum: Inject the Battlefield (https://forums.renegadeprojects.com/forumdisplay.php?fid=60)
+--- Forum: Old RockPatch Discussions (https://forums.renegadeprojects.com/forumdisplay.php?fid=59)
+--- Thread: Handwritten assembler (/showthread.php?tid=265)

Pages: 1 2


Handwritten assembler - pd - 06.05.2006

The development speed of my patch might increase noticably in the future.

This is because I'm writing me an assembler which will save me typing machine code by heart.
I write all my code concepts in assembly, then translate them to machine code.
With my assembler, I can do the second step that with one click Tongue

I just have to add a bit more flexibility and support for more assembly mnemonics, then I'll be going on working on the patch Smile

I'll probably release that little assembler right here once it's done.


RE: Handwritten assembler - DCoder - 07.05.2006

Ownage! Big Grin


RE:  Handwritten assembler - VK - 12.06.2006

DCoder Wrote:Ownage! Big Grin

Whether you could send it to me
It is interesting to me
CnCVK@yahoo.com


RE: Handwritten assembler - Nighthawk - 12.06.2006

Sure he said he would probably post it here anyway, it sounds a bit like a translator program

EDIT: Also, CNCVK, you need to know how to hack the exe before trying to convert its code, you'd need to know assembly code to hack it, and that is extremely hard for most people (me included) to learn. You should only really use any sort of hacking / assembler program if you know what you're doing


RE: Handwritten assembler - VK - 13.06.2006

I badly know English, sorryUnhappy

I understand asm-code and machine commands well.

I began dissasm GAMEMD.EXE one year ago
I use IDA Pro, HexIt, Microsoft Visual C ++ (as debugger)


RE: Handwritten assembler - Renegade - 14.06.2006

And what prevented you from helping pd?


RE: Handwritten assembler - VK - 14.06.2006

Anything Smileif he agrees I can join


RE: Handwritten assembler - Bobingabout - 14.06.2006

just try not to bug him too much...

he f*ing blocked me.


RE: Handwritten assembler - Guest - 03.07.2006

sorry, for bumping this old topic, but will this be gamemd.exe - specific or will it work on any exe, that one wants to modify?


RE: Handwritten assembler - pd - 03.07.2006

it's an assembler, it converts x86 assembler to opcode, so, would work for anything.

you can define labels that point to specific addresses, so you can like enter "call $LoadINIString$" and it knows what address to use. relative jumps are supported, you can enter at which address your custom code begins.

not all instructions are supported yet (heck I don't even know them all, I got that opcodes.hlp though).
the latest addition were 16bit operations and floating point instructions.

dunno yet when I'm gonna make it public.


RE: Handwritten assembler - TheMan - 05.08.2006

i know that this is a old topic, sorry, but did you made the tool by your self?
aslo, i hope you make it public, if more ppl learon to hack, it make it easier and better for the rock patch


RE: Handwritten assembler - pd - 05.08.2006

there is one problem with multiple people editing the patch.

you have to put your own stuff somewhere in the exe, that's sure.
now, if 2 people accidently add additional stuff to the same place, it couldn't be united.

i had an idea btw.

@CnCVK:
if you could make YR read a list of dlls to load, I could implement callers at many places in the exe, which would then be known as "events".
I would eventually be able to create something like "YR script", an assembly or even BASIC style language to code for YR, which would be compiled to dll files (would be my first compiler, but I guess I understand how they work).
this way, people could write their own function and just add them.
I would just have to do what I like best to do - researching, and adding events.

by "events", I mean something like this:
event OnUnitDamage(Unit* DamagedUnit)
DamagedUnit.Owner.DonateMoney(200);
end event

in the exe, in the damaging routine code the game would go through every dll and execute the "OnUnitDamage" function.
I'm not sure though how slow this would make the game...

I know there's a lot of ideology behind this, but if dll calls are simple enough to get working, this might be possible.


RE: Handwritten assembler - VK - 05.08.2006

So your assembler can't assemble "mov eax,cr0" or "lgdt fword ptr" xxxxLOLLOLLOLLOL
Quote:if you could make YR read a list of dlls to load, I could implement callers at many places in the exe, which would then be known as "events".
It's very simple
But better add script compiler directly in EXE.
Named it "C&C Script"
Example:
[CnCScriptTypes]
1=OnCreateHARV
2=OnDestroyHARV
3=OnAttackingHARV
....
[HARV]
OnCreate=OnCreateHARV
OnDestory=OnDestroyHARV
Speed=4
...
[OnCreateHARV]
ScriptType=...
...
0=BEGIN_SCRIPT
1=ShowMessage('Hello world');
2=END_SCRIPT
...
[OnAttackingHARV]
ScriptType=...
...
0=BEGIN_SCRIPT
1=SetMoveTarget(GetBaseCenter(@Player))
2=END_SCRIPT

@Player - variable as "this" in C++
What you thing about it?




Smile


RE: Handwritten assembler - pd - 05.08.2006

that was my plans for superweapons in 1.09 Wink

check the stuff out i wrote when planning this...


RE: Handwritten assembler - DCoder - 06.08.2006

You know what, that is a fucking awesome idea. We've long dreamed of something like this, it would also make a lot of new and old "map" triggers possible without actually editing maps... Big Grin