View previous topic :: View next topic |
Author |
Message |
LykanthricAura Advanced Cheater
Reputation: 0
Joined: 17 May 2010 Posts: 58 Location: India
|
Posted: Tue Oct 15, 2019 6:47 am Post subject: Time for 86/x64 bit |
|
|
Hello,
I am quite familiar with x86/32 bit assembly language. It's registers and instructions. I learned these back in 2004-05
But I have been facing problems hacking games that use a fair amount of x64 registers like xmm's.
Took me 30 minutes last night to find out I have to use addsd not mov.
Could anyone suggest a nice book/tutorial for refreshing up on x86/32 bit
The one I used back was "Microprocessors & Interfacing" by Douglas Hall
And more importantly a book/place for learning x86/64 instructions and differences ... for someone who already knows x86/32? |
|
Back to top |
|
 |
ParkourPenguin I post too much
Reputation: 152
Joined: 06 Jul 2014 Posts: 4697
|
Posted: Tue Oct 15, 2019 10:00 am Post subject: |
|
|
If you're already accustomed to basic jargon, reading the software developer / programmer manuals put out by Intel / AMD would be a good idea. The vast majority of guides I've seen get something wrong - you'd be better off getting the information from the manufacturer themselves. _________________
I don't know where I'm going, but I'll figure it out when I get there. |
|
Back to top |
|
 |
Csimbi I post too much
Reputation: 97
Joined: 14 Jul 2007 Posts: 3321
|
Posted: Fri Oct 18, 2019 2:53 am Post subject: |
|
|
You sound like someone who heard about ASM, not someone that actually learned it.
AMD64 and SSE2 are from 2000, so you should have "learned" it in 2004-2005.
Well, you are wrong: XMM registers are not x64 registers.
8 of them were added back in the SSE days, from XMM0 to XMM7.
It was AMD that added another 8 of them from XMM8 to XMM15 (and increased their width), then Intel followed suit with SSE2.
They did these specifically because there were no x64 processors at the time.
Anyway, consider XMM registers as general purpose registers and you won't be far from the truth.
However, since they can contain different types of data, they come with a set of new instructions.
There's no push and pop so if you need to keep state, use FXSAVE and FXRSTOR.
That's it.
I'd suggest you start where you should have started: here.
You will find the instructions there, too.
Good luck! |
|
Back to top |
|
 |
LykanthricAura Advanced Cheater
Reputation: 0
Joined: 17 May 2010 Posts: 58 Location: India
|
Posted: Fri Oct 18, 2019 3:24 am Post subject: |
|
|
ParkourPenguin wrote: | If you're already accustomed to basic jargon, reading the software developer / programmer manuals put out by Intel / AMD would be a good idea. The vast majority of guides I've seen get something wrong - you'd be better off getting the information from the manufacturer themselves. |
Already started with those. But...Thank You
Csimbi wrote: | You sound like someone who heard about ASM, not someone that actually learned it.
AMD64 and SSE2 are from 2000, so you should have "learned" it in 2004-2005. |
It was in school. They taught what they taught we learnt what we learnt and later I got some more practice with cheat engine and MHS.
We used to use stuff Turbo C (borland) and TASM.
Relics...but it was fun. Especially ASM (which I used to call ALP back then)
Quote: | Well, you are wrong: XMM registers are not x64 registers.
8 of them were added back in the SSE days, from XMM0 to XMM7.
It was AMD that added another 8 of them from XMM8 to XMM15 (and increased their width), then Intel followed suit with SSE2.
They did these specifically because there were no x64 processors at the time. |
Did not have a x64 PC either. Back in 2004-05 our schools were still using Windows XP 32-bit. So was I. In fact untill 2001-02 I was using Windows 98. (Still love Dune 2000)
Got my first x64 PC in 2009. Intel Core 2 Duo E7500. And I didn't even know it. Used to still run Windows XP 32-bit and then Windows 7 x64 after I realized it was x64 |
|
Back to top |
|
 |
Csimbi I post too much
Reputation: 97
Joined: 14 Jul 2007 Posts: 3321
|
Posted: Fri Oct 18, 2019 3:40 am Post subject: |
|
|
Wow. I did learn on Turbo C and TASM back in 1993 or so.
They still used those to teach after a decade?
egavga.bgi in 2004, lol
Well, technically, they were the best back in the day, I am just surprised - 10 years is a lot.
Interesting, I did not know.
Thanks for that!
The first PC I ever used was a 286 (was it 1989 or 1990?)
The first PC I owned was a DX4-100 with an S3 video card and an ATI Sound FX and later, a Gravis Ultrasound (1994). Cost me a fortune.
The second was a dual-cpu and FSB133 mobo with two PIII-500s with a Voodoo card (1999). Cost me another fortune.
Crap, I am getting old...
Thumbs up for Dune2k!
And good luck on your continued learning! |
|
Back to top |
|
 |
LykanthricAura Advanced Cheater
Reputation: 0
Joined: 17 May 2010 Posts: 58 Location: India
|
Posted: Sat Oct 26, 2019 6:38 am Post subject: |
|
|
I was like..11-12 when I got my first one. Intel Pentium, 133 mhz. That's all I remember about it.
The second one was a P2 333 Mhz. One of those...CPU cartridge sort of things that went into your motherboard like a PCI card.
Then for a couple of months in 2004 I got a Pentium 3 but Dad took it back before I could do much on it.
Then I got my beloved Pentium 4 HT 2.4 ghz. It had some kind of ATI card. May be a R2xx This is the one I played most my games on.
Dune 2000, Age of Empires 1 & 2, NFS 2 SE etc etc
This guy was with for 4-5 more years.
Until Dec 2009. I upgraded to a Core 2 Duo E7500 and a nvidia 9400 GT (I loved this thing, it looked cool). Did lots of gaming. Almost flunked many classes in college.
Then in early 2011 I got ASUS G53JW gaming laptop. FIRST GEN i7 and a GTX 460M. Lasted 3 years or so..
Then an XPS something... i7 4710HQ and a GTX 860M.
Then I switched to a borrowed PC for little a while. i7 6700 (non K) and a GTX 750 Ti while I was waiting for the prices of GTX 1060 laptops to drop last year.
Finally.. they did. now I have a Acer Helios --- i7 8750H and GTX 1060.
Now that I have said all that ... I definitely see why I should've learned x64 muuuuch sooner. |
|
Back to top |
|
 |
|