C
Reaction score
0

Profile posts Postings About

  • I'd actually wanted to make these for a long time but had just never gotten around to it. I think they look much more professional this way.
    Ah, I must have meant call ascii2num
    That and the other typos I blame on spending about three straight hours typing that thing up. Also, the labels is something I certainly would have had trouble with too. Thanks for the help, now to try and test this beast...
    Mkay, so I'm getting a new type of error now

    ---------------------------
    Error
    ---------------------------
    Trying to convert [4a5ae0] to hex number.
    ---------------------------
    OK
    ---------------------------

    Here's my 'source' file. I tried to debug as best as I could, but I don't know how to fix this or what I'm doing wrong.
    http://www.mediafire.com/?pd3bct57aibaznc
    Oh, I thought of something I thought would be good for the Assembler, but I keep forgetting to mention it. Just a thing for you to input the name of the asm file, so if you had a bunch you could do like.. "MechEntity.txt" then do "MechBullet1.txt" and so on.
    Well, that's what I would do, but I've got a script with at least one of those commands for every key on the keyboard :|
    It would be a really long time to rewrite that. I've also got another one with AND used the same way for key release.

    I guess the OR n' AND is what I would personally consider a priority fix but it's not like I'll just twiddle my thumbs until it's done.
    Another problem, it won't parse something like
    OR [49E210], 1000

    I could probably just
    MOV EAX, [49E210]
    OR EAX, 1000
    MOV [49E210], eax

    but that's so much bigger!
    Alright. I've got some similar issues with the MOV command, as well it generally freaks out when I try to move a byte of data instead of the whole dword, like
    MOV [ECX], DL
    It won't take MOV BYTE [ECX], 00 either.

    Oh, one command I guess doesn't seem to be in here is MOVZX, or zero extend mov. For, when dealing with aforementioned small bytes of data.

    Anyway, I figure I'll just send you the ASM I had with the problematic commands commented out. I'd ask you to guess what it is but it should be pretty obvious what with all the comments I've spewed about.
    http://www.mediafire.com/?in4ok2oi4cusmnx

    One last little bit, the program's already tits with lazers to me but would it be possible to go the other way, as in, Hex to ASM? Say if I had a function in the game I've already written but want an easily editable version, it'll make the ASM with generic label names for the jumps or something.
    Hey, I'm trying to compile a particularly lengthy piece of ASM and I get the error
    ---------------------------
    Error
    ---------------------------
    Unable to parse CMP with operands codes:
    Operand1 = 4, operand2 = 15

    Er, what does that mean? If you need, I can send you the code I was using.

    EDIT: As far as I can tell, this is the command it gets stuck on:
    cmp dword [eax], 8
    It won't go regardless of whether or not the DWORD is there..
    Thanks. So there was point in learning this language for circa 17 years :)
    Nah, I dont usually use any of the weird ones. The only thing I could thing of would be ENTER and LEAVE, but I'm still not even 100% confident whether they work on the 32 bit registers or just 16bit ones. I never really tested it.
    Oh, a minor suggestion, could there be an option to use a direct path to the executable rather than having it in the same folder as the assembler? I like to keep my mod data and modding tools separate, for the most part, and it can be a pain to keep copy-pasting .exe's every time I want to do a hack.
    Normally that'd be true, but I found the function that handles system messages :]
    So, I just intercepted message 0x201 (WM_LBUTTONDOWN) and such, then added my own code. There's also two big indexed pointer tables that basically represent most of the keyboard, so if you don't wanna get messy then simply editing that will allow you to make any key generate a particular value in the key_held variable.
    I remapped *most* of the keys. Left Shift and space are switch weapons, Q is inventory as usual and E is map system. Z and X do nothing.
    I think, if I were to do it again, I'd prefer left shift to be jump, space to be advance weapon, scroll wheel up to be weapon advance, scroll wheel down to be weapon back, and just left mouse shoot. But, it was just a for fun thing.
  • Loading…
  • Loading…
Top