from Hacker News

I ported thousands of apps to Windows 95 [video]

by lonk on 4/14/24, 9:18 AM with 25 comments

  • by TheAmazingRace on 4/15/24, 4:31 PM

    MattKC has some interesting content from time to time, like this project he worked on. But I find a decent number of his videos to be weirdly click-bait hell, like the video about installing Windows 98 on a modernish ThinkPad (using CSM - which isn't all that interesting or exotic and seemed to exist to game the Youtube algorithm for clicks) or about a video he put out a few years ago about Super Mario 64 not being optimized, with the implication that Nintendo willfully neglected to disable debug symbols in the final build of the game.

    However, the reality is far more nuanced than he was letting on. The likes of Kaze Emanuar set the record straight, and actually did a proper deep dive into optimization for the game (and not just by passing a -O2 compiler flag I might add). I'd say take MattKC's channel and content with a grain of salt.

  • by follower on 4/14/24, 11:25 AM

    Watched this a couple of days ago and was just telling someone about it earlier today...

    The technical content is really engaging (the "joy"/"frustration" of digging in some ancient technology for no easily justifiable reason--though in this case...) and there's been a heap of work put into merging the technical deep dive with a cinematic narrative that helps communicate some of the experience of what it feels like when you're three days in trying to find a piece of a puzzle someone probably hasn't cared about in 20+ years. :)

  • by fodmap on 4/14/24, 12:15 PM

    Awesome cinematic masterpiece, it also fills me with nostalgia.

    At first I thought no way I'm going to spend almost an hour watching this, but I'm happy I did it haha.

    There are many funny gems, like that whiteboard analysis at https://youtu.be/CTUMNtKQLl8?t=2343

  • by dmitrygr on 4/15/24, 4:11 PM

    Very cool, but i imagine it'll hit a number of fun bugs randomly, with code like:

        // Reimplemented
        LONG WINAPI CORKEL32_InterlockedCompareExchange(LONG *dest,  LONG xchg,  LONG compare)
        {
          LONG temp = *dest;
        
          Trace(TRACE_FORCE_DONT_PRINT, "InterlockedCompareExchange");
        
          if (compare == *dest) {
            *dest = xchg;
          }
    
          return temp;
        }
    
    Not very interlocked at all :)
  • by ale42 on 4/15/24, 2:43 PM

  • by hwbunny on 4/15/24, 4:25 PM

    That little extra thing, that soothing/warm Windows 95 chime is what's missing from today's things.
  • by ant6n on 4/15/24, 12:09 AM

    This is a great video, with a cool technical story that is well told. Too bad it didn’t make the front page!
  • by jjkaczor on 4/15/24, 7:27 PM

    This was "gripping" - I haven't been a developer in ages, but I was intimately familiar with the .net 1.0 (and beta/pre-release) and 2.0 ecosystem.

    At one point, I was shouting "gacutil" at the screen, until he got there eventually :-)

  • by sp1rit on 4/15/24, 6:30 PM

    Wouldn't it've been easier to compile mono for Windows 95 instead of spending countless hours debugging an ancient release of .net without any sort of debug symbols?
  • by beretguy on 4/15/24, 4:12 PM

  • by 1oooqooq on 4/15/24, 2:39 PM

    "single use wine port"