Probably the fastest full version number bump ever, but I didn't want another 'a' release.byuu.org wrote:bsnes v0.041 released, byuu.org active
I apologize for posting a new version so quickly. This is mostly a maintenance release: joypad analog axes can once again be mapped to the mouse / super scope axis controls, the input capture window has been rewritten to be much more compact, and I've omitted all unneeded features of Qt 4.5 to reduce the final binary size as much as possible (from ~3.33MB to ~2.3MB.) The source archive is also ~20% smaller.
Barring any unforseen problems, this will likely be the last official release for a while.
Also, I finally have dedicated hosting for byuu.org. I ask that you please update any bookmarks to point here, rather than to byuu.cinnamonpirate.com from this point on, as we'd like to free up the cinnamonpirate sub-domain slot.
bsnes v0.041 released
bsnes v0.041 released
-
- ZSNES Shake Shake Prinny
- Posts: 5632
- Joined: Wed Jul 28, 2004 4:15 pm
- Location: PAL50, dood !
You apologise way too often for your own good.
Even for your own bad.
Even for your own bad.
皆黙って俺について来い!!
Pantheon: Gideon Zhi | CaitSith2 | Nach | kode54
Code: Select all
<jmr> bsnes has the most accurate wiki page but it takes forever to load (or something)
This issue which I reported against bsnes 0.040 still exists (emphasis added):[quote="In "bsnes v0.040 released," 85cocoa"]a possible bug in the user interface: The checkbox for the NTSC filter's merge-fields setting doesn't seem to work (i.e. the fields are never merged regardless of the checkbox setting).[/quote]You probably missed this because it was in the middle of a digression about antivirus software and UPX.
EDIT: Linked to the exact post
EDIT: Linked to the exact post
Last edited by 85cocoa on Sat Mar 14, 2009 8:38 pm, edited 1 time in total.
[url=http://en.wikipedia.org/wiki/Pocky]Pocky[/url] & [url=http://en.wikipedia.org/wiki/Rocky]Rocky[/url]? [url=http://en.wikipedia.org/wiki/Pocky_%26_Rocky]Pocky & Rocky[/url]? [url=http://en.wikipedia.org/wiki/Sonic_the_Hedgehog_%28series%29#Animals.2FMobians]Pocky & Rocky[/url]?
-
- Trooper
- Posts: 376
- Joined: Tue Apr 19, 2005 11:08 pm
- Location: DFW area, TX USA
- Contact:
Hey byuu,
I just though of an idea to keep the cord intact without cutting it off on a pic border. Instead I could have it loop around behind the controller from the top. I'll post an alt version here with that idea and see what you think of it.
I just though of an idea to keep the cord intact without cutting it off on a pic border. Instead I could have it loop around behind the controller from the top. I'll post an alt version here with that idea and see what you think of it.
NES NTSC palette file:
http://www.firebrandx.com/downloads/fbx2pal.zip
http://www.firebrandx.com/downloads/fbx2pal.zip
I recommend sticking to the controller thread for art suggestions this time. Responses to your ideas sort of took over the last one.
That wouldn't make sense either, compression of some kind definitely saves bandwidth. I just think self-extracting code is stupid, especially that which is executable-specific, just to squeeze a few more drops out of the towel. It unnecessarily adds to the alphabet soup of compression formats and gives antivirus programs fits. It is not their fault that there are a bajillion trojans that reside and do things in similar fashion.Baron_Samedi wrote:hmmmm may be u should release bsnes unpacked too
-
- Trooper
- Posts: 376
- Joined: Tue Apr 19, 2005 11:08 pm
- Location: DFW area, TX USA
- Contact:
*facepalm*I just think self-extracting code is stupid, especially that which is executable-specific, just to squeeze a few more drops out of the towel. It unnecessarily adds to the alphabet soup of compression formats and gives antivirus programs fits. It is not their fault that there are a bajillion trojans that reside and do things in similar fashion.
* How is PE compression adding to a alphabet soup of compression formats. Sure, you are mangling the PE header of the executable, but so what, it saves space. And there is barely any performance difference. And size does matter.
* AVs need to improve thier static unpackers. UPX is dead easy to unpack (ESP register trick anyone?), so I don't understand why AVs have such bullshit detection. Of course they will say they are 'viruses"' when the file header is fucked up due to how some compressors mangle the import tables/IAT, the PE header, sections and other things.
* And it is thier fault. Just labeling files as trojans JUST because they use a packer is retarded. Either unpack the file into RAM (after detecting if it is packed, and YES there is ways to see if a file is packed) THEN scan or not at all.
Sorry for going overboard byuu, it just annoys me when people say such things without knowledge of reversing.
My point exactly: We do not have to work around AV developer's refusal to do a decent job.byuu wrote:Thanks, but the problem isn't on my end, it's with worthless Windows anti-virus software. By working around it, I encourage said behavior to continue. But by refusing to, it'll help put pressure on these companies to write proper software instead of selling snake oil.
To an extent, then the costs incurred by going further begin to outweigh the benefits.h4tred wrote:And size does matter.
Here's a fun analogy. 100 years ago, when a dollar unit was 30x more valuable relative to a loaf of bread, picking a sticky penny up off the street was worth the effort and risk expended to retrieve it. Today, you wouldn't bother. Nominally, it's the same amount. But nominal gains don't matter, it's the relative gain that has to be weighed.
They shouldn't have to bother minding it, the obstacle shouldn't exist because you shouldn't be putting it there.h4tred wrote:My point exactly: We do not have to work around AV developer's refusal to do a decent job.
$perGB in bandwidth and hard drive space drops year after year, whatever nominal amount was lost by not using things like UPX and JMA at the time they were created has since been returned many times over by technological progress. The costs now outweigh the relative gains and they should both be deprecated, either in favor of general compression standards or nothing at all.
It's a little bit trickier with things like MP3, but eventually space will be so abundant that having better sounding songs will outweigh the desire to hold more.
I usually try to keep out of off-topic discussions, but I feel obliged to mention two things:
* UPX does not add to the "alphabet soup of compression formats" because it is self-extracting. The decompressor comes with the executable, no additional user software required.
* The very concept of antivirus software is fundamentally flawed. There can provably be no algorithm to determine whether a given piece of software has some formally stated property like termination or malicious behaviour.
* UPX does not add to the "alphabet soup of compression formats" because it is self-extracting. The decompressor comes with the executable, no additional user software required.
* The very concept of antivirus software is fundamentally flawed. There can provably be no algorithm to determine whether a given piece of software has some formally stated property like termination or malicious behaviour.
*facepalm*ecst wrote:* The very concept of antivirus software is fundamentally flawed. There can provably be no algorithm to determine whether a given piece of software has some formally stated property like termination or malicious behaviour.
It should be pretty obvious that statement is like saying "the very concept of locks is fundamentally flawed, because there is no material so strong that it cannot be broken with sufficient force". Let's move on.
Baron_Samedi wrote:my avira av said that may be a trojan is in bsnes 0.040
it is highly probable that its a false warning because of to high heuristic
It sounds to me like the worthy Baron managed to get into his anti-virus software's preferences dialog and crank the 'paranoia' dial up to 11. Since "hiding malicious code" is one of the many, many possible uses of executable compression, the now-highly-paranoid virus-scanner marked it as a potential threat.byuu wrote:The executable is clean, but your virus scanner is worthless garbage; that still doesn't realize we live in a post-signature world. AVs need to rely on heuristics (what the program actually tries to do / access), not marking any binary with 'UPX' in it as a virus.
I think the lesson here is not "executable compression is Bad and Wrong", nor is it "Anti-virus software is Bad and Wrong", but rather "excessive paranoia makes you waste time worrying and arguing when you could otherwise be having fun".
Well it puts pressure on them to add a signature exception...byuu wrote:Thanks, but the problem isn't on my end, it's with worthless Windows anti-virus software. By working around it, I encourage said behavior to continue. But by refusing to, it'll help put pressure on these companies to write proper software instead of selling snake oil.
Core i7 920 @ 2.66GHZ | ASUS P6T Motherboard | 8GB DDR3 1600 RAM | Gigabyte Geforce 760 4GB | Windows 10 Pro x64
Why would its self-extracting nature absolve it? Do developers not expend time learning about it and using it? Do users and those trying to help them not expend time troubleshooting false positives begotten by it? Do we not expend time arguing about its merits even though it is a practical redundancy now?ecst wrote:UPX does not add to the "alphabet soup of compression formats" because it is self-extracting.
http://en.wikipedia.org/wiki/Alphabet_soup
UPX is very much is a part of the alphabet soup of active compression formats.
I know, and it makes people assume less sincerity when it's something really important (even though that's definitely not the case.)You apologise way too often for your own good. Even for your own bad.
Oh well. At least it defaults to the much more useful non-merged mode. We'll have to get it in v042.a possible bug in the user interface: The checkbox for the NTSC filter's merge-fields setting doesn't seem to work (i.e. the fields are never merged regardless of the checkbox setting).
The tool itself is under the GPL. Include the executable and shell it with upx -d before scanning. Perhaps do this only when you get a 'potential positive' on a virus.* AVs need to improve thier static unpackers. UPX is dead easy to unpack
They make the tool that scans for viruses, so it is their responsibility to be as thorough as possible.
I don't refuse to fix Mecarobot Golf or Megalomania for relying on obscure HDMA timing conditions, saying the game should be more like other games. I fix my emulator (while simultaneously bitching about how poorly programmed the game is.)
Option 1) distribute raw EXE. 6.3MB per download.To an extent, then the costs incurred by going further begin to outweigh the benefits.
Option 2) distribute 7-zip file. 2.35MB per download, ~90% of users need to get a new utility to extract it.
Option 3) distribute ZIP file. 3.1MB per download, everyone post-Win9x can extract it, but they have to take an extra step after downloading.
Option 4) UPX. 2.3MB per download, end-users don't need any additional software anywhere. Just run the program directly.
95% of hosts lie their asses off about "unlimited" bandwidth and such. They just cancel your account for TOS / AUP violations if you actually end up using it. Remind you of US cable / DSL companies much? They want to sell the "unlimited" plans to old ladies hosting cat picture websites.$perGB in bandwidth and hard drive space drops year after year
20GB of bandwidth a month from a real host costs roughly $150 a year. That equates to:
3,100 downloads / raw EXE
6,450 downloads / ZIP
8,700 downloads / UPX EXE
Each new releases causes a massive spike in downloads.
If you want to pay me $100-200 a year for my hosting bill, then I can provide a ZIP version. $300 and I'll post it as a raw EXE. Otherwise, I'd rather conserve the bandwidth.
I took it as more 'anti-virus software is the wrong approach.'It should be pretty obvious that statement is like saying "the very concept of locks is fundamentally flawed, because there is no material so strong that it cannot be broken with sufficient force". Let's move on.
This notion that apps should have 100% access to your entire hard disk, and able to install ring-0 drivers when run, is ridiculous. OpenBSD doesn't even take security seriously enough.
No application should have access even to a user's home directory unless the user explicitly grants it. Apps should default to being self-contained file systems ala OS X .dmg files. The user should be able to grant read and/or write access to recursive paths at their preference via the OS. It can do this with ring-0 popup warnings whenever the app tries to do something restricted for the first time, and ONLY one time.
Now what can malware do if you run it? It can't read or write any personal documents in your home folder. It can't communicate online. It can't install key logging drivers or query the real-time state of your keyboard when it does not have focus.
Developers: upx --best file.exeWhy would its self-extracting nature absolve it? Do developers not expend time learning about it and using it? Do users and those trying to help them not expend time troubleshooting false positives begotten by it?
99% of users: run like a normal EXE
1% of power users with broken AVs: upx -d file.exe once; run like a normal EXE
I thought I was clear that I'm keeping the current model, so I'm not sure what the problem is with arguing its merits. You guys are free to debate anything you want ad infinitum, that's not limited to UPX.
What I would like to see is one-time UPX.
You max compress it and send it out, and on the first run it decompresses and writes the file back as the uncompressed version. No need to pick a new folder / filename to extract to. No additional dialog box on first run.
Even better if it can write out additional files, so you can 'embed' DLLs with your app distribution.
You max compress it and send it out, and on the first run it decompresses and writes the file back as the uncompressed version. No need to pick a new folder / filename to extract to. No additional dialog box on first run.
Even better if it can write out additional files, so you can 'embed' DLLs with your app distribution.
I hadn't tried bsnes since v0.034 because http://repository.cinnamonpirate.com doesn't get updated and I was too lazy to build from source... until now!
In case anyone out there is wondering how to build bsnes from source in Debian unstable: I found out through trial and error that I needed to install (build dependencies) the following .deb packages: pkg-config libxv-dev libsdl1.2-dev libqt4-dev qt4-designer libao-dev libasound2-dev libopenal-dev libpulse-dev.
The main difference for me between v0.034 and v0.041 is that it was a little too heavy then (choppy audio) and now it runs smoothly - on a crappy Intel Celery even! Well done, byuu.
And now, a 'question': keyboard shortcuts? I don't know if they exist (except for Esc), but I can't find any information on them in the menus, the help file or the .cfg file. In fullscreen mode, I'd like to be able to minimize (or unmaximize) bsnes without having to disable fullscreen first - but either way it would be nice if I could assign keyboard shortcuts for these actions.
In case anyone out there is wondering how to build bsnes from source in Debian unstable: I found out through trial and error that I needed to install (build dependencies) the following .deb packages: pkg-config libxv-dev libsdl1.2-dev libqt4-dev qt4-designer libao-dev libasound2-dev libopenal-dev libpulse-dev.
The main difference for me between v0.034 and v0.041 is that it was a little too heavy then (choppy audio) and now it runs smoothly - on a crappy Intel Celery even! Well done, byuu.
And now, a 'question': keyboard shortcuts? I don't know if they exist (except for Esc), but I can't find any information on them in the menus, the help file or the .cfg file. In fullscreen mode, I'd like to be able to minimize (or unmaximize) bsnes without having to disable fullscreen first - but either way it would be nice if I could assign keyboard shortcuts for these actions.
I've updated my default site layout. I avoided using any CSS3 properties, so it should look the same everywhere now. Well, except with IE7 and below. Old theme is still available under Misc -> Site Themes if you prefer it.
Be sure to profile it too for an extra ~15% speed boost :D
There's no key binding to minimize / maximize windows, for that I'd recommend relying on your desktop environment. Win7 has Win+Up / Win+Down, and GNOME + Xfce at least have window manager shortcut keys that are user-assignable.
Sorry. Derrick's main PC is a Loongson MIPS-clone, so the i386 port is no longer being updated :(I hadn't tried bsnes since v0.034 because http://repository.cinnamonpirate.com doesn't get updated and I was too lazy to build from source... until now!
Wow cool, must be a newer Celery.The main difference for me between v0.034 and v0.041 is that it was a little too heavy then (choppy audio) and now it runs smoothly - on a crappy Intel Celery even!
Be sure to profile it too for an extra ~15% speed boost :D
The keyboard shortcuts that exist are under Settings -> Configuration -> Input -> User interface (it's the third option after the two controller ports.)And now, a 'question': keyboard shortcuts? I don't know if they exist (except for Esc), but I can't find any information on them in the menus, the help file or the .cfg file.
There's no key binding to minimize / maximize windows, for that I'd recommend relying on your desktop environment. Win7 has Win+Up / Win+Down, and GNOME + Xfce at least have window manager shortcut keys that are user-assignable.
So you're comparing your decision to bad code in Mecarobot Golf?byuu wrote:I don't refuse to fix Mecarobot Golf or Megalomania for relying on obscure HDMA timing conditions, saying the game should be more like other games. I fix my emulator (while simultaneously bitching about how poorly programmed the game is.)
Seems about right. Instead of performing two clicks, you'd rather it be extracted on run over and over?Option 3) distribute ZIP file. 3.1MB per download, everyone post-Win9x can extract it, but they have to take an extra step after downloading.
What was the vital flaw in my e-rice recommendation? Take a look at the static options.If you want to pay me $100-200 a year for my hosting bill, then I can provide a ZIP version. $300 and I'll post it as a raw EXE. Otherwise, I'd rather conserve the bandwidth.
Last edited by FitzRoy on Sun Mar 15, 2009 5:51 pm, edited 2 times in total.
At least I didn't use a car analogy.FitzRoy wrote:So you're comparing your decision to bad code in Mecarobot Golf?
Yes. The latter is transparent to the user, the former is not.Seems about right. Instead of performing two clicks, you'd rather it be extracted on run over and over?
Not sure what to tell you, I absolutely love the uTorrent model. It's too bad Qt is so large, because otherwise bsnes would be just as small an executable as well.
I don't trust them to not pull the plug when / if I get a massive bandwidth spike.What was the vital flaw in my e-rice recommendation?
You've calculated how many runs it would take for the delay caused by decompression to exceed 1 second and it never does?byuu wrote:The latter is transparent to the user, the former is not.
If you can't do it with one location, use several. By the way, did you just offer to accept donations? We could come up with 5 years of Static B on this forum alone.I don't trust them to not pull the plug when / if I get a massive bandwidth spike.
UPX error's are very common.
Just upload the false positive to the virusscanner creator.
when in doubt you can always upload to http://www.VirusTotal.com
Just upload the false positive to the virusscanner creator.
when in doubt you can always upload to http://www.VirusTotal.com
-
- Trooper
- Posts: 376
- Joined: Tue Apr 19, 2005 11:08 pm
- Location: DFW area, TX USA
- Contact:
Byuu, I remember you were always against it, but is there a chance you might reconsider putting in a history feature? Just the top 5 most recently played would be really nice. I'm playing CT again and it's kind of a pain to have to navigate to the rom every time I run bsnes.
NES NTSC palette file:
http://www.firebrandx.com/downloads/fbx2pal.zip
http://www.firebrandx.com/downloads/fbx2pal.zip