Show HN: RetroTick – Run classic Windows EXEs in the browser

(retrotick.com)

78 points | by lqs_ 3 hours ago

16 comments

  • chromehearts 2 hours ago
    This is so cool & I'm really amazed by it but I couldn't help laugh at the readme

    > We strongly recommend contributing with Claude Code or similar AI coding tools. [...] Of course, coding by hand is also welcome.

    Funny time we live in lol

    • lqs_ 41 minutes ago
      Ha — even the README itself was written by AI, including that very sentence. Funny times indeed.
  • em3rgent0rdr 9 minutes ago
    Impressive. Noting however that double-clicking is not working in Minesweeper. :)
  • jeroenhd 2 hours ago
    Seems to run a lot faster than the previous proof-of-concept I've found (https://www.boxedwine.org/app). Then again, that website runs an entire Linux VM to support Wine.
    • lqs_ 42 minutes ago
      RetroTick's CPU emulation is actually slower than JIT-based emulators. It feels fast because the Win32 API calls are native JavaScript, not emulated system calls.
  • lqs_ 35 minutes ago
    Hidden feature: right-click any executable and select "View Resources" to browse its embedded resources like icons, bitmaps, dialogs, and version info. It even supports viewing Delphi forms (though Delphi programs can't actually run yet). Think of it as a browser-based Resource Hacker or eXeScope.
  • butokai 37 minutes ago
    Just a couple of hours ago I was thinking about this project from some time ago doing the same thing: https://github.com/evmar/retrowin32

    I wondered how much of this could be done with an LLM agent, and here we have the answer

    • lqs_ 30 minutes ago
      I actually contributed to retrowin32 to get Solitaire running there. Back then the only AI tool available was Copilot, and it took me several days just to get the main window showing, without menus or dialogs.

      The current state of RetroTick was achieved in less than one hour using Claude Code.

  • stuaxo 25 minutes ago
    Not sure shift is working. I tried using QBASIC but couldn't type : only ; because of that.

    Then I tried running the program SHELL and it crashed.

  • Tepix 1 hour ago
    Tried it with REVERSI.EXE from Windows 3.0 from https://winworldpc.com/download/c2bbc28f-177a-c2b2-5311-c3a4... DISK02.IMG

    (you have to first uncompress it, for example with 7zip).

        $ sha256sum REVERSI.EXE
        a9e319c8f479d1568beec03858fdbb27c71747b2bbed6cd7c9f5e2daa23b40e9  REVERSI.EXE
    
    Result:

    The game starts, it begins rendering the board, but then hangs.

    • fao_ 1 hour ago
      Really doesn't surprise me, to be honest:

      > We strongly recommend contributing with Claude Code or similar AI coding tools.

      • ftchd 1 hour ago
        so which one, the coding by hand part?
    • lqs_ 43 minutes ago
      Win16 GDI support is still pretty incomplete. There's a lot of work left to do there.
  • ale42 1 hour ago
    Funny project...

    Tried to run SHELL from QBASIC, but it crashes:

      D:\qbasic.exe has encountered a problem and needs to close.
      
      Reason:  illegal instruction
      Address: 0x00002fee
    • lqs_ 27 minutes ago
      DOS interrupt support is still limited. Running SHELL would essentially require implementing a full MS-DOS COMMAND.COM, which is a significant undertaking.
      • stuaxo 24 minutes ago
        Ralph browns interrupt list could go a long way to getting stuff working.
    • stuaxo 24 minutes ago
      Oh, I did exactly the same :D
  • haonnoah 1 hour ago
    Pretty cool. The pipes program doesn't seem to have color. Thoughts on making programs launch from a URL parameter? IE Launching a screensaver or game?
    • lqs_ 43 minutes ago
      The missing colors are likely due to some texture bugs in the OpenGL implementation. As for URL-based launching, that's definitely on the roadmap, but I want to reach broader EXE compatibility first.
  • TechSquidTV 1 hour ago
    Please let me plan Sim Theme Park. I can't seem to run it on Crossover on my mac.
    • lqs_ 44 minutes ago
      Sim Theme Park is probably too modern and complex for the current state of RetroTick, unfortunately.
  • alfiedotwtf 15 minutes ago
    Whoa, this is pretty sick!!
  • LinusU 2 hours ago
    This is super cool!

    Checkout retrowin32 for something similar but written in Rust and not specifically targeting the web: https://github.com/evmar/retrowin32

    • lqs_ 45 minutes ago
      Thanks! I'm actually familiar with retrowin32. I even contributed a few commits to get Solitaire running in it. But Rust has a steep learning curve for me.
  • Dwedit 2 hours ago
    Not enough Shell32 to run Winfile or Notepad.

    Also the command prompt won't list directories for some reason.

    • lqs_ 47 minutes ago
      Notepad from Windows 2000 should launch now, though it's rendered as a simple textarea without full functionality. The file system API still needs a lot of work.
  • b3lvedere 2 hours ago
    Aww. The FreeCell cheats don't work, except for -1 and -2 :)
    • lqs_ 47 minutes ago
      Just added keyboard shortcut support. Ctrl+Shift+F10 should work now!
  • wertyu123 2 hours ago
    Nice
  • octoclaw 2 hours ago
    [dead]