Hacker Newsnew | past | comments | ask | show | jobs | submit | Grom_PE's commentslogin

I never liked the idea of running Flash inside the web browser, but a single file .swf game format is almost as good as any ROM game dump.

Some games didn't mind running locally from an .swf file, but some others had a "URL protection", presumably to prevent people from embedding their flash games at other websites, and they didn't make an exception for localhost.

Long time ago I've fixed hundreds of such flash games using RABCDAsm and made them work in standalone Flash Player.

Took a brief look at Flashpoint Archive, it seems their way to fix URL check is to spin up a web server to present an address the game expects.


As a bit of background, flash games were often sponsored. The bigger websites would pay hundreds to thousands of dollars to put their (clickable) logo in the beginning of a game, and sometimes would also have either timed or permanent exclusivity to their website.

when archiving, it's preferable to leave the files in the state you originally found them

Is there a standard patch format for this use case, where you could keep the original files and have a second file that patches them at load time to make them runnable?

As Flash files are often compressed, a patch wouldn't be any smaller than having an original and a fixed copy. You'd have to invent a new patch format that operates on an uncompressed SWF.

Perhaps naively, that seems tractable to me.

It seems crazy to me that the offered way to install an extension on Chrome is to click a button on a privileged website, and then the installed extension autoupdates without an option to turn it off.

I hate the idea of installing stuff without an ability to look at what's inside first, so what I did was patch Chromium binary, replacing all strings "chromewebstore.google.com" with something else, so I can inject custom JS into that website and turn "Install" button into "Download CRX" button. After downloading, I can unpack the .crx file and look at the code, then install via "Load unpacked" and it never updates automatically. This way I'm sure only the code I've looked at gets executed.


Deluxe Paint 2 for DOS was my favorite drawing program, so had to check this out, pretty nice!

The only thing that stops me from recommending it is non-integer zoom levels, which is especially bad for pixel art.

Moving layers around was also confusing, had to click Layer → Transform → Free Transform to be able to move things around. It would be much more obvious if there was a move icon in the tool panel that does just that.


It doesn't work when uBlock Origin blocks uncrossy.com/js/cookieManager.js?v=7


Oh, that's it. My bad!


I've found Xfce with Wallis theme to be quite comfortable after I ditched Windows 7. Been using it for 3 years now.

Also I enjoyed how easily I could modify it:

- xfwm4: zoom only to multiples of integer, nearest neighbor only

- xfwm4: stop moving zoomed area after the cursor when Scroll Lock is on

- xfce4-screenshooter: supply custom actions with parameters %x %y %w %h of a selected rectangle, allowing me, for example, to select a rectangle and then launch a screen recording script.

Never found the use for multiple desktops, though.

The only part that irritates me is having to interact with the GTK file chooser (file open dialog). Someday I might be annoyed enough to replace it.


> The only part that irritates me is having to interact with the GTK file chooser (file open dialog). Someday I might be annoyed enough to replace it.

That's probably my only annoyance as well. Is there an easy way to replace it? Not being able to see the path as a string is very "un-linux".


The file chooser can be somewhat tamed in the settings editor. For example to get the buttons back to the bottom of the dialog where they belong: disable the "DialogsUseHeader" setting under "xsettings" in xfce4-settings-editor


Tiny Core Linux fits nicely on a FAT32 EFI boot partition as a rescue OS.


Hey, this sounds interesting! Is there any tutorial out there on how to make it work?


This made me remember old set of tools called mtx2midi and midi2mtx, I used them to edit some midi files while making sure I'm not introducing any unwanted changes. While roundtrip output was not binary identical, it still sounded the same.

Looks like MTXT tool here does not quite work for this use case, the result of the roundtrip of a midi I tried has a segment folded over, making two separate segments play at the same time while the total duration got shorter.

https://files.catbox.moe/5q44q0.zip (buggy output starts at 42 seconds)


Thank you, I will have a look. I consider it important to have the round trip conversion working seamlessly.

I created an issue here: https://github.com/Daninet/mtxt/issues/1


It reminded me of ABC and the tools abc2midi and midi2abc.


On my Linux system, I hooked up xfce4-screenshooter's "custom action" to a shell script (ocr.sh %f) with tesseract like so:

    #!/bin/sh
    set -o pipefail
    lang=${2:-eng}
    if tesseract "$1" - -l $lang | xclip -selection clipboard ; then
      notify-send "Text copied"
    else
      notify-send "Could not copy text"
    fi
It works great most of the time along with the xfce4-screenshooter's ability to select a rectangle.

When the text is especially difficult for tesseract, I can use Gemma3-4B via llama.cpp's llama-mtmd-cli, but that takes a minute.



I have experimented with Tiny Core Linux + Wine, that netted around 100 MB, would be a good starting point for running Windows software on a minimal OS. Certainly would run more software than any Windows cut and shrunk to that size.


I've gone over to Linux after using Windows for 25 years.

As someone who enjoys older games, I am pleasantly surprised that Wine (with dxvk and cnc-ddraw) lets me run more games in a better way than I was able to on Windows.

I can run some 16-bit games on a 64-bit OS!

Games that rudely switch to fullscreen, I can run in Wine Virtual Desktop. Previously on Windows, I had to configure hacks like DxWnd and it didn't always work.

I only wish Wine also allowed me to zoom 2x or 3x, but this is where Gamescope comes in:

    gamescope -S integer -F nearest --borderless wine game.exe
Also there is a potential to use a different Wine configuration (prefix) for every game specifically. So far I haven't had to resort to this.

I noticed some Unity games waste disk space with gigabytes of zeroes, Linux lets me run them from inside a compressed SquashFS image, this even makes the game load faster:

    mkdir ./game
    squashfuse ./game.squashfs ./game
    pushd ./game
    wine game.exe
    popd
    sleep 1
    umount ./game
    rmdir ./game
I encountered a game that crashes due to multiprocessor system, the fix is simple, restricting it to one CPU:

    taskset --cpu-list 1 wine game.exe


> Games that rudely switch to fullscreen, I can run in Wine Virtual Desktop. Previously on Windows, I had to configure hacks like DxWnd and it didn't always work.

Maybe Wine could be ported to Windows :-)


There will be a day when Microsoft ships a "Windows" that cuts all legacy compatibility except for an included distribution of Wine.


Microsoft might not do it, but there's always reactos [1]

[1] https://reactos.org/


At this point, that's exactly what Windows needs. As Microsoft only adds new features and doesn't remove almost any, Windows is getting reaaally bloated. And what was Microsoft's response? Everyone should buy a new faster computer to run Windows 11.


Tbh, a better strategy would to slim down Windows again would be to remove all the new user-facing stuff which was added over the last two decades. There have been significant improvements in the kernel and DirectX, but on the surface, Windows somehow managed to remove user-facing features while at the same time adding an incredible amount of bloat in layers above the core operating system. From a usability perspective the Windows desktop UI in Win2k was singnificantly better than anything that came after.


> remove all the new user-facing stuff which was added over the last two decades

That's not all that needs to be removed from Windows, and it's not what they're interested in removing. The old MFC, GDI, COMCTL, COMDLG, Winsock etc. must be a lot higher in their "do delete" list.


Win2k with WSL without systemd would be so kino


Hardly, given that systemd author is a Microsoft employee nowadays.


> [...] kino

IHaveABanana Is this a thing or are you just now trying to make it a thing?

Either way, I like it :)


That was the idea with UWP and Windows 10X, but folks really want that backwards compatibility.


Well, yes, but APIs aside, as long as the developers and users have the choice, they won't choose a new backwards incompatible solution if when they can stay with their old solution.

Look at Apple Macs, all went from x86 to arm, breaking software and fixing incompatibilities later. Users had no choice but to use m1 macOS if they wanted a new device.


And leave software behind, hence why many postpone their acquisition until the hardware dies.


It was/is unironically a "solution" to some games (eg. Elden Ring) with unfixable stuttering on Windows: https://www.youtube.com/watch?v=vAooLiCy7rE


You can already run it in WSL2, apparently.


Running windows to run linux to run windows is delicious


It already is in some form! This is what I used to play Sid Meier's Civnet with my brothers: https://github.com/otya128/winevdm


https://fdossena.com/index.php?p=wined3d/index.frag

This is the proper Wine for Windows but just for DirectX->GL or DirectX-Vulkan.


Just run it under wsl


>I only wish Wine also allowed me to zoom 2x or 3x, but this is where Gamescope comes in

Also possible using dxwrapper (for DirectX 7-9 games):

https://github.com/elishacloud/dxwrapper

Similarly to dxvk, you drop a few DLLs into the game directory then edit one config file. No need to use a dedicated program.


Can you elaborate on Unity wasting disk space on gigabytes of zeroes?

How did you discover that? Is it intentional on Unity's part? Percentage-wise, are we talking 2% of a 100GB game, or 50% of a 4GB game?

I can't find anything about it online.


I suppose that is an issue how a specific game was made, not inherent to Unity.

I like to look inside game files and a .zip archive of 1GB unpacking to ~10GB game made me suspicious.


My first guess would be it has lots of uncompressed images or badly compressed videos as artifacts.


Same, but games run uncompressed assets as an optimization measure to trade disk usage for CPU usage, depending on which is the bottleneck for their particular game (iiuc)

So it'd be surprising to me if a developer chose to use uncompressed/lightly compressed assets, and compressing them caused performance to increase; because you're intentionally choosing the tradeoff in the opposite direction the developer did

Of course, there are game developers that are less technical and may not have knowingly made that tradeoff in which case all bets are off, but the games made by those developers tend not to be the kind that require beefy machines to run at 60fps+


The right tradeoff for compression ratio can change with just a few years of technological progress, or even quicker if it's a half-assed port from console to a high-end PC. There are similar issues for a game's decision of how many threads to spawn based on the CPU's core count. The developer's assumptions may not have been right to begin with, and even if they were, they're not likely to stay right for long.


Exactly. Guaranteed SSDs and a spare CPU core have made compression almost always faster.


Being able to rely on fast storage makes compression less necessary for performance reasons. But the higher price/GB of SSDs mean users have a stronger preference for games to keep the install size under control.


There was a time when console games would avoid disc seeks at all costs, even duplicating uncompressed assets. Compression can easily interfere with laying data out in blocks to read sequentially.

That’s not a problem with SSDs and most machines have more cores or even dedicated hardware decoders. Of course it’s also more worthwhile to compress since SSD storage is comparatively more expensive.


It never ceases to surprise me that people still embed 5+ MB resolution photos on their sites, then use them scaled down to thumbnail size, but here we are.


Put a chunk of work into optimising the images on a site once, of course as soon as I left this was undone.

The office we worked in had really fast internet, but I was fixing things for the users.


My power company’s outage website is about the only site I can’t access through my cell phone when our power is out because even the “low bandwidth” version is a bloated farce.


Reminds me of the mention of "contiguous zeroes" that used to be in the Apple App Store docs.[1] Which seemed like just a backhanded way to say "we encrypt and then compress so don't expect easy compression."

I suppose this might be asset padding or perhaps these are raw textures with full alpha sections? Still, it seems pretty strange. What game, what asset?

[1] https://stackoverflow.com/questions/42478186/app-size-on-app...


Same! Fallout New Vegas runs phenomenally on Linux but struggles on Windows. Same with Call of Duty 2 and even some newer titles like Borderlands 2.


Neat. I am in the habit of using the kernel squashfs with privileges. TIL about squashfuse.


OTVDM (based on Wine) allows you to run 16-bit programs on 64-bit Windows, so it's not just a Linux thing.


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: