Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • World
  • Users
  • Groups
Skins
  • Light
  • Brite
  • 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 (Cyborg)
  • No Skin
Collapse
Brand Logo

CIRCLE WITH A DOT

  1. Home
  2. Uncategorized
  3. I like how Windows managed the 32bit/64bit migration in the most sensible way, by making us pick from two copies of every installer/binary forever

I like how Windows managed the 32bit/64bit migration in the most sensible way, by making us pick from two copies of every installer/binary forever

Scheduled Pinned Locked Moved Uncategorized
37 Posts 20 Posters 1 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@digipres.clubF foone@digipres.club

    64bit windows EXE, being run in DOSBox-X:

    Link Preview Image
    foone@digipres.clubF This user is from outside of this forum
    foone@digipres.clubF This user is from outside of this forum
    foone@digipres.club
    wrote last edited by
    #14

    fun fact: although that DOS stub usually just says that and quits, there's nothing that stops it from doing other things.

    You could write a program that runs on DOS and win64, it'd just need to be implemented twice and embedded in the same binary

    foone@digipres.clubF dosnostalgic@mastodon.socialD dryak@mstdn.scienceD kawa@mas.toK 4 Replies Last reply
    0
    • foone@digipres.clubF foone@digipres.club

      technically windows does use fat binaries, they're just DOS/windows.

      which is really only ever used to display a "you need windows to run this program" if you accidentally run it in DOS.

      cr1901@mastodon.socialC This user is from outside of this forum
      cr1901@mastodon.socialC This user is from outside of this forum
      cr1901@mastodon.social
      wrote last edited by
      #15

      @foone I feel like I remember certain Win 3.x binaries also prepending a DOS executable of the same program, so that the same binary runs on both systems.

      But Win 3.x isn't PE. So maybe I'm misremembering.

      1 Reply Last reply
      0
      • foone@digipres.clubF foone@digipres.club

        fun fact: although that DOS stub usually just says that and quits, there's nothing that stops it from doing other things.

        You could write a program that runs on DOS and win64, it'd just need to be implemented twice and embedded in the same binary

        foone@digipres.clubF This user is from outside of this forum
        foone@digipres.clubF This user is from outside of this forum
        foone@digipres.club
        wrote last edited by
        #16

        so you could fat-binary a program to run on DOS/win32/win64 this way, by making it a 32bit program which win64 can run though backwards compatibility.

        I'm not sure if you can include win16 though: it won't run the DOS stub, and it'll not be able to run the win32 version.

        Unless you can set up win32s on win16 in such a way that it works in both 16bit windowses (through win32s) and 32bit-native windowses

        max@peering.socialM kathee_hds@tech.lgbtK foone@digipres.clubF jernej__s@infosec.exchangeJ 4 Replies Last reply
        0
        • foone@digipres.clubF foone@digipres.club

          I wonder if it still does that for 64bit EXEs?

          luna@catgirl.centerL This user is from outside of this forum
          luna@catgirl.centerL This user is from outside of this forum
          luna@catgirl.center
          wrote last edited by
          #17

          @foone@digipres.club it's even still a thing in arm64 exes (iirc with an x86 dos stub) and bootmgfw.efi, even though no reasonable person will ever try to run those on dos

          luna@catgirl.centerL 1 Reply Last reply
          0
          • dalias@hachyderm.ioD dalias@hachyderm.io

            @foone But you *can* use that for so much more.... 😈

            gsuberland@chaos.socialG This user is from outside of this forum
            gsuberland@chaos.socialG This user is from outside of this forum
            gsuberland@chaos.social
            wrote last edited by
            #18

            @dalias @foone I wrote a really evil CTF challenge where the Windows part was pure misdirection, it had tons of nasty anti-analysis stuff, sent people on a runaround chasing down endless threads, and the flag wasn't in there at all. if you ran it under DOS it printed the flag.

            foone@digipres.clubF 1 Reply Last reply
            0
            • gsuberland@chaos.socialG gsuberland@chaos.social

              @dalias @foone I wrote a really evil CTF challenge where the Windows part was pure misdirection, it had tons of nasty anti-analysis stuff, sent people on a runaround chasing down endless threads, and the flag wasn't in there at all. if you ran it under DOS it printed the flag.

              foone@digipres.clubF This user is from outside of this forum
              foone@digipres.clubF This user is from outside of this forum
              foone@digipres.club
              wrote last edited by
              #19

              @gsuberland @dalias nasty

              1 Reply Last reply
              0
              • foone@digipres.clubF foone@digipres.club

                so you could fat-binary a program to run on DOS/win32/win64 this way, by making it a 32bit program which win64 can run though backwards compatibility.

                I'm not sure if you can include win16 though: it won't run the DOS stub, and it'll not be able to run the win32 version.

                Unless you can set up win32s on win16 in such a way that it works in both 16bit windowses (through win32s) and 32bit-native windowses

                max@peering.socialM This user is from outside of this forum
                max@peering.socialM This user is from outside of this forum
                max@peering.social
                wrote last edited by
                #20

                RE: https://digipres.club/@foone/116195447625031209

                @foone Does ARM somehow also fit in?

                foone@digipres.clubF jernej__s@infosec.exchangeJ snowfox@tech.lgbtS 3 Replies Last reply
                0
                • foone@digipres.clubF foone@digipres.club

                  so you could fat-binary a program to run on DOS/win32/win64 this way, by making it a 32bit program which win64 can run though backwards compatibility.

                  I'm not sure if you can include win16 though: it won't run the DOS stub, and it'll not be able to run the win32 version.

                  Unless you can set up win32s on win16 in such a way that it works in both 16bit windowses (through win32s) and 32bit-native windowses

                  kathee_hds@tech.lgbtK This user is from outside of this forum
                  kathee_hds@tech.lgbtK This user is from outside of this forum
                  kathee_hds@tech.lgbt
                  wrote last edited by
                  #21

                  @foone but fat as it is tall and with tits to match or are we being cowards?

                  foone@digipres.clubF 1 Reply Last reply
                  0
                  • kathee_hds@tech.lgbtK kathee_hds@tech.lgbt

                    @foone but fat as it is tall and with tits to match or are we being cowards?

                    foone@digipres.clubF This user is from outside of this forum
                    foone@digipres.clubF This user is from outside of this forum
                    foone@digipres.club
                    wrote last edited by
                    #22

                    @Kathee_HDS ROUGE.EXE!

                    kathee_hds@tech.lgbtK 1 Reply Last reply
                    0
                    • foone@digipres.clubF foone@digipres.club

                      fun fact: although that DOS stub usually just says that and quits, there's nothing that stops it from doing other things.

                      You could write a program that runs on DOS and win64, it'd just need to be implemented twice and embedded in the same binary

                      dosnostalgic@mastodon.socialD This user is from outside of this forum
                      dosnostalgic@mastodon.socialD This user is from outside of this forum
                      dosnostalgic@mastodon.social
                      wrote last edited by
                      #23

                      @foone An example of this is Bleep!, an NSF player for DOS/Win32
                      https://www.zophar.net/utilities/audio-multi/bleep-.html

                      whophd@ioc.exchangeW 1 Reply Last reply
                      0
                      • luna@catgirl.centerL luna@catgirl.center

                        @foone@digipres.club it's even still a thing in arm64 exes (iirc with an x86 dos stub) and bootmgfw.efi, even though no reasonable person will ever try to run those on dos

                        luna@catgirl.centerL This user is from outside of this forum
                        luna@catgirl.centerL This user is from outside of this forum
                        luna@catgirl.center
                        wrote last edited by
                        #24

                        @foone@digipres.club the .efi file for systemd-boot on my system doesn't include a dos stub though, so that's why i specifically said bootmgfw.efi

                        1 Reply Last reply
                        0
                        • foone@digipres.clubF foone@digipres.club

                          so you could fat-binary a program to run on DOS/win32/win64 this way, by making it a 32bit program which win64 can run though backwards compatibility.

                          I'm not sure if you can include win16 though: it won't run the DOS stub, and it'll not be able to run the win32 version.

                          Unless you can set up win32s on win16 in such a way that it works in both 16bit windowses (through win32s) and 32bit-native windowses

                          foone@digipres.clubF This user is from outside of this forum
                          foone@digipres.clubF This user is from outside of this forum
                          foone@digipres.club
                          wrote last edited by
                          #25

                          Anatoly Shashkin💾 (@dosnostalgic@mastodon.social)

                          @foone@digipres.club An example of this is Bleep!, an NSF player for DOS/Win32 https://www.zophar.net/utilities/audio-multi/bleep-.html

                          favicon

                          Mastodon (mastodon.social)

                          jernej__s@infosec.exchangeJ 1 Reply Last reply
                          0
                          • max@peering.socialM max@peering.social

                            RE: https://digipres.club/@foone/116195447625031209

                            @foone Does ARM somehow also fit in?

                            foone@digipres.clubF This user is from outside of this forum
                            foone@digipres.clubF This user is from outside of this forum
                            foone@digipres.club
                            wrote last edited by
                            #26

                            @max presumably but I know nothing about windows-on-ARM, I don't believe in it.

                            1 Reply Last reply
                            0
                            • foone@digipres.clubF foone@digipres.club

                              fun fact: although that DOS stub usually just says that and quits, there's nothing that stops it from doing other things.

                              You could write a program that runs on DOS and win64, it'd just need to be implemented twice and embedded in the same binary

                              dryak@mstdn.scienceD This user is from outside of this forum
                              dryak@mstdn.scienceD This user is from outside of this forum
                              dryak@mstdn.science
                              wrote last edited by
                              #27

                              @foone that was the whole shtick of the HX DOS Extender.

                              The DOS stub could start it, and in turn that extender supports enough Win32 API to allow some limited software to run.

                              And I think I vaguely remember some other software doing crazy stuff with their DOS stubs.

                              1 Reply Last reply
                              0
                              • foone@digipres.clubF foone@digipres.club

                                fun fact: although that DOS stub usually just says that and quits, there's nothing that stops it from doing other things.

                                You could write a program that runs on DOS and win64, it'd just need to be implemented twice and embedded in the same binary

                                kawa@mas.toK This user is from outside of this forum
                                kawa@mas.toK This user is from outside of this forum
                                kawa@mas.to
                                wrote last edited by
                                #28

                                @foone I remember Visual Basic 3.0 "correcting" by trying to run Windows, and telling Windows to run VB in turn on startup.

                                1 Reply Last reply
                                0
                                • foone@digipres.clubF foone@digipres.club

                                  I wonder if it still does that for 64bit EXEs?

                                  jernej__s@infosec.exchangeJ This user is from outside of this forum
                                  jernej__s@infosec.exchangeJ This user is from outside of this forum
                                  jernej__s@infosec.exchange
                                  wrote last edited by
                                  #29

                                  @foone Not just 64-bit EXEs, EFI binaries also usually (but not always) contain the DOS stub.

                                  1 Reply Last reply
                                  0
                                  • foone@digipres.clubF foone@digipres.club

                                    I know programmers who use fat binaries and they're all cowards

                                    mxk@hachyderm.ioM This user is from outside of this forum
                                    mxk@hachyderm.ioM This user is from outside of this forum
                                    mxk@hachyderm.io
                                    wrote last edited by
                                    #30

                                    @foone my favorite type of fat binaries probably are cosmopolitan libc/ape binaries.
                                    I find it fascinating and entertaining but note that I don't think it's an actual good idea.
                                    https://justine.lol/cosmopolitan/index.html

                                    1 Reply Last reply
                                    0
                                    • foone@digipres.clubF foone@digipres.club

                                      Anatoly Shashkin💾 (@dosnostalgic@mastodon.social)

                                      @foone@digipres.club An example of this is Bleep!, an NSF player for DOS/Win32 https://www.zophar.net/utilities/audio-multi/bleep-.html

                                      favicon

                                      Mastodon (mastodon.social)

                                      jernej__s@infosec.exchangeJ This user is from outside of this forum
                                      jernej__s@infosec.exchangeJ This user is from outside of this forum
                                      jernej__s@infosec.exchange
                                      wrote last edited by
                                      #31

                                      @foone I remember some utilities from back in the day that did this; I even wrote one (QB 4.5 for DOS .exe, VB 5.0 for Win32; IIRC, I had to run the VB linker manually, which let me specify the .exe to use as DOS stub).

                                      1 Reply Last reply
                                      0
                                      • foone@digipres.clubF foone@digipres.club

                                        @Kathee_HDS ROUGE.EXE!

                                        kathee_hds@tech.lgbtK This user is from outside of this forum
                                        kathee_hds@tech.lgbtK This user is from outside of this forum
                                        kathee_hds@tech.lgbt
                                        wrote last edited by
                                        #32

                                        @foone ah damn missed the opportunity to say "with bits to match", post cancelled, hit the showers everyone we did good but we're not at our best yet the fans expect better of us pushes a lever and falls into the river

                                        1 Reply Last reply
                                        0
                                        • max@peering.socialM max@peering.social

                                          RE: https://digipres.club/@foone/116195447625031209

                                          @foone Does ARM somehow also fit in?

                                          jernej__s@infosec.exchangeJ This user is from outside of this forum
                                          jernej__s@infosec.exchangeJ This user is from outside of this forum
                                          jernej__s@infosec.exchange
                                          wrote last edited by
                                          #33

                                          @max @foone DOS stub is still present in Windows ARM binaries (32 and 64-bit).

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


                                          • Login

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