tandy put their sound chip on the 1A interrupt?
-
tandy put their sound chip on the 1A interrupt? THE TIME SERVICES?
-
I started reverse engineering Where in the World is Carmen Sandiego (Enhanced DOS edition) and I'm trying to find how it generates its random seeds so I search on int 1a and the first thing I find is it's doing TANDY SOUNDS?
-
Funny fact: I was trying to get an online assembler to spit out the machine code for "int 1a" but couldn't get it to, so I just went "fuck it, I can probably just do that in my head!"
Turns out I can. My brain is weird.
-
@foone For what, i386?
CD 1A
-
@azonenberg exactly yeah
-
@foone guess my brain is weird too.
At one point I was thinking of getting car license plate 55 8B EC.
But decide not to because I'd want 8B E5 5D C3 on the rear plate if I did that.
-
Here's something I didn't know existed until just now: Where in the World is Carmen Sandiego checks your name against the list dossier list and rejects you if you use any of those names.
-
PRONOUNS DETECTED: THIS GAME IS WOKE
sadly they don't have they/them on here. What about the non-binary criminals, huh?
-
stretch goal: hack in at least on enby criminal with appropriate pronouns. maybe I'll just put myself in the game as one of the criminals you can apprehend
-
I faked this screenshot but this is what I mean
-
I think I might be able to do the hack I want by changing one byte.
I'm trying to change it so it has "daily challenges", and I think I can fix that by just switching a INT 1A from subfunction 00 to 04, making it seed the random function with the date instead of the ticks-since-midnight
-
@foone but... if you put yourself in as a criminal, you will no longer be allowed to play!
-
@shtrom that's the price you pay for representation
-
@azonenberg cute
-
eh, I used 5 bytes. I don't need to impress anyone
-
@azonenberg @foone The llvm-mc command can help with stuff like that:
echo 'int $0x1a' | llvm-mc -arch x86 -show-encoding
.text
int $26 # encoding: [0xcd,0x1a] -
@raimue @azonenberg ooh, handy. easier than making a file for NASM to encode it with
-
NORMAL CODE
random(*(byte *)*(undefined2 *)
(*(int *)(*(int *)0x39a6 * 0xe + local_c * 2 + 0x1d02) * 2 +
*(int *)(local_c * 2 + 0x24b)) - 1); -
I found another set of pronouns!
-
I haven't figured out how this game stores gender, but I'm gonna go out on a limb and say it's like this:
male: 0
female: 4