Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • World
  • Users
  • Groups
Skins
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (Darkly)
  • No Skin
Collapse

Chebucto Regional Softball Club

  1. Home
  2. Uncategorized
  3. tandy put their sound chip on the 1A interrupt?
A forum for discussing and organizing recreational softball and baseball games and leagues in the greater Halifax area.

tandy put their sound chip on the 1A interrupt?

Scheduled Pinned Locked Moved Uncategorized
325 Posts 1 Posters 0 Views
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • Foone🏳️‍⚧️F Foone🏳️‍⚧️

    the applyPronouns function lets you adjust how it's encoded dynamically. Fancy!
    So how it works is you do something like this:

    applyPronouns("\80 was bald", 0x80, "he\0him")

    and it'll return "he was bald", right? But it's more than just a simple find-replace...

    Foone🏳️‍⚧️F This user is from outside of this forum
    Foone🏳️‍⚧️F This user is from outside of this forum
    Foone🏳️‍⚧️
    wrote on last edited by
    #235

    Because you can do:

    applyPronouns("I saw \81. \80 was bald!", 0x80, "he\0him")

    and it'll return "I saw him. he was bald!".

    See, you can specify multiple replacements at once, by using \x80, \x81, \x82 and so on.

    Foone🏳️‍⚧️F 1 Reply Last reply
    0
    • Foone🏳️‍⚧️F Foone🏳️‍⚧️

      Because you can do:

      applyPronouns("I saw \81. \80 was bald!", 0x80, "he\0him")

      and it'll return "I saw him. he was bald!".

      See, you can specify multiple replacements at once, by using \x80, \x81, \x82 and so on.

      Foone🏳️‍⚧️F This user is from outside of this forum
      Foone🏳️‍⚧️F This user is from outside of this forum
      Foone🏳️‍⚧️
      wrote on last edited by
      #236

      The way it actually works is the game uses "He/he/Him/him" for the pronouns, so \x80 is uppercase "He", \x81 is lowercase, \x82 is uppercase "Him", and \x83 is lowercase.

      Foone🏳️‍⚧️F 1 Reply Last reply
      0
      • Foone🏳️‍⚧️F Foone🏳️‍⚧️

        The way it actually works is the game uses "He/he/Him/him" for the pronouns, so \x80 is uppercase "He", \x81 is lowercase, \x82 is uppercase "Him", and \x83 is lowercase.

        Foone🏳️‍⚧️F This user is from outside of this forum
        Foone🏳️‍⚧️F This user is from outside of this forum
        Foone🏳️‍⚧️
        wrote on last edited by
        #237

        trying to figure out how to properly decode the fonts in this game is REALLY reminding me why I constantly cheat with The Death Generator. Staring at a decompilation/disassembly and hex editor is no fun

        Foone🏳️‍⚧️F 1 Reply Last reply
        0
        • Foone🏳️‍⚧️F Foone🏳️‍⚧️

          trying to figure out how to properly decode the fonts in this game is REALLY reminding me why I constantly cheat with The Death Generator. Staring at a decompilation/disassembly and hex editor is no fun

          Foone🏳️‍⚧️F This user is from outside of this forum
          Foone🏳️‍⚧️F This user is from outside of this forum
          Foone🏳️‍⚧️
          wrote on last edited by
          #238

          it makes some sense that I'm having trouble with it. I think it's technically DOUBLECOMPRESSED

          Foone🏳️‍⚧️F 1 Reply Last reply
          0
          • Foone🏳️‍⚧️F Foone🏳️‍⚧️

            it makes some sense that I'm having trouble with it. I think it's technically DOUBLECOMPRESSED

            Foone🏳️‍⚧️F This user is from outside of this forum
            Foone🏳️‍⚧️F This user is from outside of this forum
            Foone🏳️‍⚧️
            wrote on last edited by
            #239

            I should be able to put a breakpoint on "the palette changed"

            Foone🏳️‍⚧️F 1 Reply Last reply
            0
            • Foone🏳️‍⚧️F Foone🏳️‍⚧️

              I should be able to put a breakpoint on "the palette changed"

              Foone🏳️‍⚧️F This user is from outside of this forum
              Foone🏳️‍⚧️F This user is from outside of this forum
              Foone🏳️‍⚧️
              wrote on last edited by
              #240

              ooh, timing NOPs. Someone figured that PCs wouldn't get any faster after 1990

              Foone🏳️‍⚧️F 1 Reply Last reply
              0
              • Foone🏳️‍⚧️F Foone🏳️‍⚧️

                ooh, timing NOPs. Someone figured that PCs wouldn't get any faster after 1990

                Foone🏳️‍⚧️F This user is from outside of this forum
                Foone🏳️‍⚧️F This user is from outside of this forum
                Foone🏳️‍⚧️
                wrote on last edited by
                #241

                I got my floppy copy in the mail, I just need to image it.

                Fun fact from the box: It has a letter from the player character to their cousin, and I believe this is the only place in the game and associated media that they name your character.

                It's Dale.

                Foone🏳️‍⚧️F 1 Reply Last reply
                0
                • Foone🏳️‍⚧️F Foone🏳️‍⚧️

                  I got my floppy copy in the mail, I just need to image it.

                  Fun fact from the box: It has a letter from the player character to their cousin, and I believe this is the only place in the game and associated media that they name your character.

                  It's Dale.

                  Foone🏳️‍⚧️F This user is from outside of this forum
                  Foone🏳️‍⚧️F This user is from outside of this forum
                  Foone🏳️‍⚧️
                  wrote on last edited by
                  #242

                  I also discovered that in the Amiga port, they redrew the crime computer to make it clearly an amiga. Cute!

                  Link Preview Image
                  Foone🏳️‍⚧️F 1 Reply Last reply
                  0
                  • Foone🏳️‍⚧️F Foone🏳️‍⚧️

                    I also discovered that in the Amiga port, they redrew the crime computer to make it clearly an amiga. Cute!

                    Link Preview Image
                    Foone🏳️‍⚧️F This user is from outside of this forum
                    Foone🏳️‍⚧️F This user is from outside of this forum
                    Foone🏳️‍⚧️
                    wrote on last edited by
                    #243

                    Imaged my original disks. Two 360kb 5.25" disks.
                    They're laid out like this:
                    Disk 1:
                    CARMEN.EXE
                    CARMEN.DAT
                    Disk 2:
                    CITIES.DAT
                    MIDISND.DAT
                    DIGISND.DAT

                    Foone🏳️‍⚧️F 1 Reply Last reply
                    0
                    • Foone🏳️‍⚧️F Foone🏳️‍⚧️

                      Imaged my original disks. Two 360kb 5.25" disks.
                      They're laid out like this:
                      Disk 1:
                      CARMEN.EXE
                      CARMEN.DAT
                      Disk 2:
                      CITIES.DAT
                      MIDISND.DAT
                      DIGISND.DAT

                      Foone🏳️‍⚧️F This user is from outside of this forum
                      Foone🏳️‍⚧️F This user is from outside of this forum
                      Foone🏳️‍⚧️
                      wrote on last edited by
                      #244

                      Finally, we know the answer to the age-old question of Where in the World is Carmen Sandiego?

                      The answer is "My floppy drive"

                      Link Preview Image
                      Foone🏳️‍⚧️F 1 Reply Last reply
                      0
                      • Foone🏳️‍⚧️F Foone🏳️‍⚧️

                        Finally, we know the answer to the age-old question of Where in the World is Carmen Sandiego?

                        The answer is "My floppy drive"

                        Link Preview Image
                        Foone🏳️‍⚧️F This user is from outside of this forum
                        Foone🏳️‍⚧️F This user is from outside of this forum
                        Foone🏳️‍⚧️
                        wrote on last edited by
                        #245

                        it has been 0 days since foone has foolishly tried to hack a decompression algorithm.

                        Foone🏳️‍⚧️F 1 Reply Last reply
                        0
                        • Foone🏳️‍⚧️F Foone🏳️‍⚧️

                          it has been 0 days since foone has foolishly tried to hack a decompression algorithm.

                          Foone🏳️‍⚧️F This user is from outside of this forum
                          Foone🏳️‍⚧️F This user is from outside of this forum
                          Foone🏳️‍⚧️
                          wrote on last edited by
                          #246

                          well my "ignore the problem" solution of using bochscpu to embed a 16bit x86 emulator has failed. it's somehow broken and it's broken in the rust library or C core, not the python, and I really don't want to have to deal with debugging this.

                          time to switch to a completely different x86 emulator? PROBABLY!

                          Foone🏳️‍⚧️F 1 Reply Last reply
                          0
                          • Foone🏳️‍⚧️F Foone🏳️‍⚧️

                            well my "ignore the problem" solution of using bochscpu to embed a 16bit x86 emulator has failed. it's somehow broken and it's broken in the rust library or C core, not the python, and I really don't want to have to deal with debugging this.

                            time to switch to a completely different x86 emulator? PROBABLY!

                            Foone🏳️‍⚧️F This user is from outside of this forum
                            Foone🏳️‍⚧️F This user is from outside of this forum
                            Foone🏳️‍⚧️
                            wrote on last edited by
                            #247

                            unicorn has great documentation.

                            at least I assume it would be great, if it existed

                            Foone🏳️‍⚧️F 1 Reply Last reply
                            0
                            • Foone🏳️‍⚧️F Foone🏳️‍⚧️

                              unicorn has great documentation.

                              at least I assume it would be great, if it existed

                              Foone🏳️‍⚧️F This user is from outside of this forum
                              Foone🏳️‍⚧️F This user is from outside of this forum
                              Foone🏳️‍⚧️
                              wrote on last edited by
                              #248

                              x86 16bit segmentation and regular expressions:

                              BECAUSE FUCK IT

                              Foone🏳️‍⚧️F 1 Reply Last reply
                              0
                              • Foone🏳️‍⚧️F Foone🏳️‍⚧️

                                x86 16bit segmentation and regular expressions:

                                BECAUSE FUCK IT

                                Foone🏳️‍⚧️F This user is from outside of this forum
                                Foone🏳️‍⚧️F This user is from outside of this forum
                                Foone🏳️‍⚧️
                                wrote on last edited by
                                #249

                                I'm implementing unicorn as an x86 emulator to do the decompression, but I'm single-stepping the processor and I'm aiding debugging by showing what instruction I'm on.

                                but instead of having to set up an x86 disassembly engine, I'm just parsing a plain text ghidra dump of the disassembly. I'm parsing it with regexes

                                Foone🏳️‍⚧️F 1 Reply Last reply
                                0
                                • Foone🏳️‍⚧️F Foone🏳️‍⚧️

                                  I'm implementing unicorn as an x86 emulator to do the decompression, but I'm single-stepping the processor and I'm aiding debugging by showing what instruction I'm on.

                                  but instead of having to set up an x86 disassembly engine, I'm just parsing a plain text ghidra dump of the disassembly. I'm parsing it with regexes

                                  Foone🏳️‍⚧️F This user is from outside of this forum
                                  Foone🏳️‍⚧️F This user is from outside of this forum
                                  Foone🏳️‍⚧️
                                  wrote on last edited by
                                  #250

                                  it's too bad python's ctypes doesn't support 16-bit x86. it'd be handy right now

                                  Foone🏳️‍⚧️F 1 Reply Last reply
                                  0
                                  • Foone🏳️‍⚧️F Foone🏳️‍⚧️

                                    it's too bad python's ctypes doesn't support 16-bit x86. it'd be handy right now

                                    Foone🏳️‍⚧️F This user is from outside of this forum
                                    Foone🏳️‍⚧️F This user is from outside of this forum
                                    Foone🏳️‍⚧️
                                    wrote on last edited by
                                    #251

                                    my latest bad idea: DUMBPATCH.

                                    to avoid the complexity of generating functions and mapping them into the address space of the emulated PC, I instead designed a simple syntax:

                                    a 16bit segmented address plus a number. that function is emulated as if it returned that number in AX. There are no other options. I suspect I'll be able to emulate up to 80% of complex subfunctions with this one bit of functionality

                                    Foone🏳️‍⚧️F 1 Reply Last reply
                                    0
                                    • Foone🏳️‍⚧️F Foone🏳️‍⚧️

                                      my latest bad idea: DUMBPATCH.

                                      to avoid the complexity of generating functions and mapping them into the address space of the emulated PC, I instead designed a simple syntax:

                                      a 16bit segmented address plus a number. that function is emulated as if it returned that number in AX. There are no other options. I suspect I'll be able to emulate up to 80% of complex subfunctions with this one bit of functionality

                                      Foone🏳️‍⚧️F This user is from outside of this forum
                                      Foone🏳️‍⚧️F This user is from outside of this forum
                                      Foone🏳️‍⚧️
                                      wrote on last edited by
                                      #252

                                      I need this because the decompression routine I'm emulating isn't entirely standalone: it calls malloc() at the beginning and free() at the end

                                      so I'm replacing malloc() with a static value and free() with a return value no one will check

                                      Foone🏳️‍⚧️F 1 Reply Last reply
                                      0
                                      • Foone🏳️‍⚧️F Foone🏳️‍⚧️

                                        I need this because the decompression routine I'm emulating isn't entirely standalone: it calls malloc() at the beginning and free() at the end

                                        so I'm replacing malloc() with a static value and free() with a return value no one will check

                                        Foone🏳️‍⚧️F This user is from outside of this forum
                                        Foone🏳️‍⚧️F This user is from outside of this forum
                                        Foone🏳️‍⚧️
                                        wrote on last edited by
                                        #253

                                        ideally I should be able to patch arbitrary python in there and do some kind of interop to return values to python

                                        but that's hard. and way easier unflexible thing this is 80% of what I need that for

                                        Foone🏳️‍⚧️F 1 Reply Last reply
                                        0
                                        • Foone🏳️‍⚧️F Foone🏳️‍⚧️

                                          ideally I should be able to patch arbitrary python in there and do some kind of interop to return values to python

                                          but that's hard. and way easier unflexible thing this is 80% of what I need that for

                                          Foone🏳️‍⚧️F This user is from outside of this forum
                                          Foone🏳️‍⚧️F This user is from outside of this forum
                                          Foone🏳️‍⚧️
                                          wrote on last edited by
                                          #254

                                          I forgot about callee cleanup. fucking stdcall is callee cleanup. I can't have a generic int blah(){return 0x1234;} function because it needs to know how many words of arguments were pushed.

                                          Foone🏳️‍⚧️F 1 Reply Last reply
                                          0

                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          • 1
                                          • 2
                                          • 12
                                          • 13
                                          • 14
                                          • 15
                                          • 16
                                          • 17
                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          Powered by NodeBB Contributors
                                          • First post
                                            Last post
                                          0
                                          • Categories
                                          • Recent
                                          • Tags
                                          • Popular
                                          • World
                                          • Users
                                          • Groups