All Posts • All Tags • #releases
byuu v0.10 released2020-02-14 08:39:56
Another beta before a v1 release ...
If folks could please test this and let me know of any serious issues, I'd like to get those addressed before releasing a final v1 release build. Thanks!
- update driver settings when changing audio and input drivers
- correct sound output when not outputting at 48KHz
- correct sound output when changing frequency after game is loaded
- show program icon when game is not loaded
- move from native status bar to higan/bsnes-style status bar
- fix a bug with WonderSwan internal EEPROM data
- fix hotkey polling in fullscreen mode
- added joypad support
- fixed initial bindings for gamepad axes and hats
- allow multi-selection clear on input mappings
- added path searching to higan::Node::find()
- added higan::Node::scan() to locate relative tree nodes
- exposed settings for color bleed/emulation, interframe blending, overscan
- default to Path::desktop() instead of Path::user() for loading games
Known issues with v0.10:
- region detection is not working (PAL games are running at NTSC speeds)
Permalink • 1 Comment
byuu v0.8 released2020-02-11 00:03:17
I'm releasing the first official beta for the new byuu emulator today.
This is a new multi-system emulator, which shares emulation cores with higan.
Like higan, byuu is focused on accuracy foremost. Unlike higan, byuu aims to be much more user friendly. Think of byuu as easy mode, and higan as advanced mode, but they are fundamentally the same emulator under the hood. One is not a superset of the other; they are sibling projects.
The goal of byuu is to carry forward the breakout success of bsnes for all of higan's emulation cores, and not just for the SNES alone. bsnes, by being much easier to use, led to a resurgence in support that resulted in several new features, speed optimizations, bug reports, and emulator accuracy improvements. I hope to rekindle the same interest in all 25 of my supported emulation cores with this new emulator.
And frankly, higan's future depends on this project being a success. I am aiming to retire around the end of this year (though it's not set in stone), and I am looking for a new lead developer willing to take over byuu.org, github.com/byuu, and its emulation projects. I would still contribute to the projects on GitHub for as long as I were able to.
I am changing my personal name to Near, and calling my new emulator byuu, for many reasons. You can read the complete rationale here: byuu.org/articles/names. But essentially, these emulators are not only mine: they are the work of dozens of volunteers spanning 15+ years of development. It is perhaps too late, but I wish to separate my personal identity from these projects. I want these emulators to become group projects with multiple developers, and I want them to outlast me if at all possible. With 15+ years and 230,000+ backlinks to byuu.org, I could not see a way to move these emulators to a new domain. And based on it taking 2+ years for higan to become even partially known to the general public, I did not see a viable method of establishing this new emulator in less than a year without using an established name, and the only such name I have at my disposal is byuu. Ideally, I would have kept my emulators on a separate website from day one, but I cannot change the past to correct for this mistake. I mulled over this decision for the past few weeks, and this is the best choice I could come up with. I hope you'll understand. I will also understand if folks continue to call me personally by byuu. I understand it's not easy to change names after 22+ years, and that this will invariably cause some level of confusion. But it can't be helped.
The byuu_san Twitter account, as well as most social media accounts using the name byuu, will be used only for official software development news and updates going forward. Some accounts will be harder than others to migrate, and will take more time and planning.
I have spun off my personal Twitter account and set up a new personal website. Over the coming months, I will be migrating personal content from byuu.org and elsewhere over to my personal website.
I make no secret of the mistakes I've made in the past as byuu (nor will the internet ever let us forget them), and that I'll likely continue to make more mistakes as Near. But for the past two years, I have been doing my best to change and improve myself. I am who I am however, and though I am to be more friendly and cooperative, I won't hide my identity nor unwavering support for my friends. But game preservation transcends politics and ideologies, and I've now separated my work from my personality, so at this point, it is up to you if you want to follow me as Near or not. It's no longer directly tied to byuu.
In any case, byuu is still brand-new, and it is missing several major features including gamepad support, multi-player support, cheat codes, and more. These features will be added in due-time. Sans enhancements like HD mode 7, I am for feature-parity with bsnes, including run-ahead support and much more. The speed is rather limited as well, but I hope to implement scanline renderers and roughly double the performance of each emulator core in the coming year. I am releasing this now for feedback and to try to gauge interest in this new idea of mine.
I hope it will be a success! Thank you everyone!
- v1: support for gamepad mapping and the save state manager
- v2: support for other controller types (mice, light guns) and multiple-players
- v3: support for Famicom Disk System, Super Game Boy, and Sega CD emulation
- v?: support for per-system input mapping, cheat codes, movie recording, and run-ahead functionality
- v?+X: optional scanline renderers for each core to boost performance substantially
- v?+Y: additional emulation cores from outside of higan (PS1, Saturn, N64 would be most promising!)
Permalink • 11 Comments • #releases
New Article: Names2020-02-02 16:28:34
After 22 years of going by byuu, I am changing my name online to Near as of today.
I've written about the rationale here, if you're interested.
New Emulator: byuu2020-01-31 00:08:04
Okay, so this'll be a large announcement. For now, I'm asking that you keep the news to my own circles and not submit it to news aggregators, please. I want to have something tangible to show people first.
I've started on a new emulator project. Well, specifically a new user interface.
The goal is to share the emulation cores from higan, but create a new UI that focuses on ease-of-use in the same way bsnes does. bsnes was highly successful, and resulted in literally dozens of important bug reports and subsequent fixes to my SNES emulation core, which benefited higan very much as well. Already, bsnes contributions have surpassed higan by ~40% and it has grown to be my predominant project in spite of being only one emulator core.
If higan's other cores are to have a future, they need community support and interest from other developers to help out. There's simply no way I can devote ten years of my life to all 23 other cores in higan the way I have with the SNES core. I'm only one person and no one lives long enough for that. I desperately need help with my Sega CD emulation, for instance, but higan's UI is getting in the way of that.
As I've explained in the past, I want higan to emulate everything possible. Yet every additional edge-case feature higan adds complicates the creation of an easy-to-use UI. Try and create a recursive Tower of Power stack with any other Sega Genesis emulator, for instance. Or try connecting two Super Scopes, a mouse, and another Multitap to a base Multitap in any other SNES emulator. Crazy edge cases? Definitely. Worth preserving? To me, yes.
But for 99% of use cases (just loading and playing a game), it complicates the emulator too much. So I'm creating a new emulator that will exclude the most extreme cases, and in return produce an emulator that's as easy to use as bsnes.
From the start, it will be a standard desktop-style UI, but in the long-term, my hope is to create a hybrid UI that can be used on the desktop with a keyboard and mouse or on a TV with just a gamepad. But perhaps I'm getting too ambitious here.
higan and bsnes development will continue as normal. This will just serve as something of an intermediary between the two. bsnes still needs to exist as a hard-fork emulator, in order to add speed-hacks and enhancements beyond what the original hardware was capable of, things that are contradictory to the goals of higan. I will however likely use this opportunity to renew interest in trying to speed up higan cores without sacrificing accuracy. bsnes has helped me come up with many new tricks for that, which I believe I can apply to the upstream higan emulation projects now.
Of course, a new emulator needs a new name. As per my previous post, I've recently started on my final attempt at a Bahamut Lagoon fan translation. Starting on this project for the first time in 1998 is where my pseudonym byuu originally came from. I kept the name for 22 years since to symbolize its meaning, "(to make a) mistake", as a reminder that no one is perfect, including me, and that we grow from our mistakes. With the looming completion of my final dream from childhood, I've simply outgrown the name.
If you consider higan is named after one of my favorite SNES JRPG protagonists (from Tengai Makyou Zero), and considering the established connection between my name and accuracy, byuu seems the most fitting name I could think of. And I already have the perfect name recognition, domain, logo, and even company registration ready for it to boot!
Of course that leaves open the question of what to call myself. Once the project is launched, I'll start going under my own name. Although you can always keep calling me byuu if you want.
If you'd like to track the progress, I've set up a new Twitter account where I'll post periodic status updates.
Expect a release some time in 2020.
Thanks everyone! Here's hoping byuu will be as much of a success as bsnes was!
Permalink • 1 Comment
New Project: Bahamut Lagoon2020-01-21 16:59:58
2020 seems like the ideal year. It's time to finish what I started all those years ago.
For now, a brief backstory and explanation. More to come in the near future as the pieces fall into place.
Bahamut Lagoon project page
Permalink • 3 Comments
New Article: The Edge of Emulation2020-01-20 18:04:53
I've written a new article covering the final significant issue preventing near-perfect emulation of the SNES: exact cycle-timing of the SNES PPUs (video generators.) I've also proposed some potential solutions that are beyond my abilities, so this article is also a call for help.
You can read the article here: The Edge of Emulation
bsnes v114 released2020-01-08 10:23:58
In celebration of Max completing his testing of the entire SNES library in both bsnes' fast and accurate PPU rendering modes, and all bugs reported now corrected, today I'm releasing bsnes v114.
Unfortunately, I'm no longer able to host binaries here, and so I'm now currently hosting my Windows binaries at byuu.itch.io instead. For webmasters, I would ask that you please link directly to the bsnes page instead: this gives access to other important links, and allows me to repoint download links in the future as needed.
- Official page
- Windows binary downloads
- macOS, Linux, FreeBSD binary downloads
- Source code repository
- fixed an issue with manually created save states that appeared in v113 (corrected as of v113.1)
- added run-ahead support to the libretro target [realnc]
- macOS: fixed an issue with OpenGL shaders [Sintendo]
- added CPU joypad polling override for Taikyoku Igo - Goliath
- added PPU overrides for Marvelous, Super SWIV, Winter Olympics, and World Cup Striker
- added hotfix for Nichibutsu Arcade Classics (even on real hardware, the attract sequence would sometimes hang)
- fixed region heuristics for the Scandanavian release of Tintin in Tibet
- added a heuristic override for Yuyu no Quiz de Go! Go! (the game's title overwrites the mapping mode identifier)
- properly clear overscan region when overscan is disabled (SNES Electronics Test with PAL video mode)
- updated bsnes to use the latest SNES preservation project database (a few dozen more games added)
- reverted gamepak (folder) firmware naming to use architecture name rather than identifier name
- renamed lr35902.boot.rom to sm83.boot.rom for gamepaks
- fixed typo in the GUI regarding the HD mode 7 +/- hotkeys
In case you think I'm being paranoid or histrionic about hosting downloads offsite now:
Permalink • 4 Comments • #releases
New Article: Safe Browsing2020-01-04 15:47:51
I've written up a proper article explanation for my site explaining my reasoning and concerns for removing binary downloads from byuu.org.
You can read the article here: Safe Browsing
The good news is that I've set up several really great alternatives, so binaries are still very easy to obtain via the following services:
Windows Downloads Removed2019-12-29 11:22:48
Regrettably, I have no choice but to remove Windows binary downloads from my website.
They are being flagged and blocked in spite of being absolutely clean, on the sole basis that they are uncommonly downloaded. Which by definition is going to keep happening every time I release new software.
I've written more on this subject, which you can read here:
Google's Monopoly is Stifling Free Software
But essentially, I believe I need a Windows EV code signing certificate, and I am unable to get one. The BBB has not responded to repeated attempts requesting to register my business with them, which is a pre-requisite for obtaining the certificate. In fact, I don't even know if EV code signing will be enough, Google does not specify how to prevent this warning in the future, but right now it's the only thing I know to try and resolve this issue.
I will try to come up with something, but for the time being, I am afraid that downloads are only available as source code or Cirrus CI buildbot results. I apologize for the inconvenience, but my hands are tied here.
Permalink • 24 Comments
higan v107 user interface demonstration video2019-12-23 17:41:52
I've posted a YouTube video demonstrating how to use the recent higan v107 release.
Hopefully this will be beneficial for folks who prefer a narrated video demonstration to a text post.
You can view the new video here, thanks!
Update: I've also created a higan v107 changelog page to track the user interface enhancements implemented through the higan v107 line. This won't be something I do for every release, but since the goal is to drive v107 development based on user feedback, it seemed particularly important to have this time around.
Permalink • Comment
higan v107 released2019-12-21 16:02:42
It has been over two years and *235* WIP releases since higan v106 was released.
And today, finally, I'm posting higan v107 publicly.
There's just no way I'm going to be able to create a full changelog here, but I will summarize the most important parts:
- added Sega CD emulation (BIN+CUE only)
- added Neo Geo Pocket + Neo Geo Pocket Color emulation
- added MSX + MSX2 emulation (cartridges only)
- added SG-1000 + SC-3000 emulation
- added ColecoVision emulation
- added boot ROM emulation for the WonderSwan + WonderSwan Color
- substantial accuracy improvements to the SNES and Game Boy emulation
- created an entirely new tree-view-driven user interface
Please note that the user interface rewrite is extremely substantial, and I can't stress how absolutely critical it is that you read the user guide before attempting to use this new release.
The truth is, the new user interface is not ready, and without a release to gather feedback, it never will be. The old higan v106 user interface was unable to scale up to the complexity of emulating 25 systems and counting. I spent many months working from the ground up on a brand new paradigm so that I could emulate any system of any complexity using a single unified user interface. I believe a tree view to be the best way of expressing infinite flexibility, but this design is unlike any other emulator out there. And I know very well from experience how much we all (myself included) dislike change.
I believe that it's possible to refine this concept and strike a balance between familiarity and intuitiveness. , but with your help, I believe I can get there. Short of stagnation with v106, this was the only path forward.
If you're willing to give this release a try, I'd welcome your feedback. Please understand that right now, it's very rough around the edges with lots of small bugs and no polish. The v107 line will include many public point-releases as I incorporate feedback and rewrite components to make the emulator easier to use.
If you're not onboard with that, please stick with higan v106 and wait this release cycle out until things are finalized in a future release. Or perhaps skip over higan and check out the newly revived bsnes instead: bsnes is what I'm known best for, solid SNES emulation, in a performant, feature-filled, traditional, easy-to-use package.
As before and as always, higan is my personal research project. I know that it's not for everyone, but if you're like me, then I do hope you'll enjoy this release. It's the culmination of literally thousands of hours of work since v106.
Permalink • 6 Comments • #releases
bsnes v113.1 released2019-12-15 17:16:14
I've posted a quick hotfix release for an issue that was causing save states to sometimes fail to restore the state correctly.
I haven't yet identified why the small change I made in the v112 WIPs caused this issue, but reverting it has of course corrected the issue, so for now, I'm posting v113.1:
Permalink • 1 Comment • #releases
SNES Preservation Project Update2019-12-12 09:57:29
I'll be partnering with the Game Preservation Society and lending them my complete 1,450-game Japanese SNES collection for the next 2-3 years to perform the difficult task of scanning and cataloguing all of the game boxes. I will still be handling the game cartridges as I have been before. We are looking for information from anyone with first-hand experience on the best method to go about shipping these games from the United States to Japan safely, so if you have any ideas, please let us know, thank you!
More information is available here.
(side-tangent: apparently Reddit has a setting for whether you want your user profile indexed or not. Seems it's set to false by default. Worth checking if you post there and care about that sort of thing.)
Permalink • Comment
bsnes v113 released2019-12-11 13:46:24
bsnes v113 has been released. The full changelog is below.
- corrected PPU OAM address latching with the accurate PPU renderer
- fixed offset-per-tile regression with the accurate PPU renderer
- fixed very rare PPU mosaic rendering bug with the accurate PPU renderer
- corrected a sound stuttering issue when emulating the Super Game Boy 2 [LIJI]
- Windows: added a workaround for an issue where bsnes was crashing on exit for a very small number of users
- changed gamepak firmware loading names to use the identifier (dsp1, dsp2, etc) label instead of the architecture (upd7725, etc)
- do not apply color blending for the first hires pixel with the accurate PPU renderer (fixes green line in Jurassic Park)
- added scanline override setting for Suguro Quest++ with the fast PPU renderer
- disabled HD mode 7 supersampling when EXTBG mode is active, as it is not compatible
- fixed MSU1 and SGB audio when using run-ahead and overclocking modes
- implemented correct fix for Kishin Douji Zenki - Tenchi Meidou
- improved CPU IRQ handling to fix Shin Nihon Pro Wrestling Kouhin '95
- fixed a GUI typo where "Increment" and "Decrement" "State Slot" labels were reversed
- fixed audio balance setting when lowering it below 50%
- added BSC-1A7M-10 board and corrected BSC-1AxM-xx masking (fixes RPG Tsukuru 2 and Sound Novel Tsukuru)
- improved the driver crash detector to not trip if closing the emulator before initialization could complete
- added a hotfix to prevent a rare crash in Rendering Ranger R2 that can happen even on real hardware
- made the entire window support drag-and-drop for gamepaks and game ROM files
- merged the latest release of SameBoy for improved Super Game Boy support [LIJI]
- macOS: add hotplug support to IOKit joypad driver [Sintendo]
- macOS: fixed a serious issue with the IOKit joypad driver [kode54]
- libretro: updated boards database to the latest version [rtretiakov]
- libretro: merged Super Game Boy support improvement patch [fr500]
- small improvements to libco and nall libraries
bsnes v113 is the seventh in the new line of bsnes releases. At the time of release, all known issues are once again resolved. As always, please report any issues to the bsnes GitHub issue tracker, or feel free to drop me a line on the contact page. Thank you!
Permalink • 5 Comments • #releases
About Page Refresh2019-12-06 15:17:41
I've rewritten my about page to be more of a short auto-biography, rather than two or three sentences. If you're interested in that sort of thing, feel free to take a look, thanks!
Company Icon and Logo2019-12-05 07:01:48
Here is the official company icon I'll be using:
And here's the official logo:
These were designed courtesy of fracturehill on Twitter, and are inspired by Ange Albertini's bsnes and higan logos.
Permalink • Comment
I recently purchased a MIDI keyboard and have been learning how to start making music using FL Studio.
Obviously I have a long way to go, but it's impressive that even a total beginner can make something (arguably) listenable after such a short amount of time. I've set up a Bandcamp page for posting songs to. Hopefully with time I'll get better.
If you're interested, I've posted an updated version of my first song, Iridescent, here.
Permalink • Comment
bsnes v112 released2019-12-05 07:00:45
bsnes v112 was released on October 20th, 2019. The full changelog is below.
- improved Super Game Boy audio support
- fixed two small sprite issues affecting Star Ocean with the accurate PPU
- added deterministic rewind support; rewind is now 100% safe when enabled
- added a safer save state serialization method for Tales of Phantasia and Star Ocean
- fixed detection of ST010 and ST011 HLE when DSP firmware is missing
- added SHVC-2P3B-01 prototype board mapping for Kunio-kun Tournament Special
- improved the frame advance functionality to be more responsive
- added a scanline override for the fast PPU for the Japanese version of NHL '94
- added new preset buttons to the driver settings to make adaptive sync and dynamic rate control easier to configure
- by request, I added a pseudo-fullscreen mode to continue displaying the status bar
- added run-ahead support of up to four frames
- optimized save state serialization performance [Alcaro, byuu]
- added serialization to the SDD1 decompressor for the new deterministic save state mode
- removed the fast PPU tile caching; as it was not helping speed and made serialization more expensive
- RetroArch: added Super Game Boy support
- RetroArch: added a core change that removes a frame of input latency
- Linux: added a fix for a rare crashing issue with SDL joypads
(reposting due to the CMS update.)
Permalink • 2 Comments • #releases
Announcement: Business Launch2019-12-05 06:59:56
The exciting news is that today I'm announcing my new software development business.
For the 15th anniversary since starting on bsnes, I formed "byuu" as a limited liability company on October 14th, 2019. The name just makes sense given my domain. It took a while to finalize all the paperwork and register everything, hence the announcement delay. But everything's live now.
In the past, I've sold a few commercial licenses to my emulator software as an individual, which was not an ideal way to do things from a legal standpoint. Around March of 2018, I began working on developing more performant emulation, which led to both the revival of bsnes and a failed licensing effort, csnes. As a result of the latter, I am no longer interested in licensing my emulators for cartridge players.
Instead, I want to focus more on individual uses such as game publishers wishing to re-release titles from their back catalogs on modern platforms. I am also open to consulting and contractual work in this capacity, so long as there is 100% respect for software licensing throughout any projects I'm involved with. My rates will be much lower if this work can be open-sourced.
If you're interested, feel free to contact me here, or on one of my social media accounts.
So what does this mean for bsnes and higan? Nothing, really. I've already mostly re-developed byuu.org to be more professional, so nothing will be changing. My software licensing remains the same, and I will not be commercializing any contributed work that I do not own copyrights to. I also do not require a CLA for contributing to bsnes and higan, of course.
This move is really just a way to formalize the unofficial licensing of the past, and an aim to be more professional. I can now create a business bank account, consider hiring in the future, etc. An all-around win.
Also unrelated to this, I've extended the registration of byuu.org for the next ten years, so I won't be going anywhere!
Thank you for reading.
Permalink • Comment
New image gallery2019-12-05 06:58:53
I've rewritten the old image gallery with a more modern design that supports grouping images into categories.
This time, I'll leave the real-life photography to my Instagram account for now, because I'm not really keen on writing in-browser rotation + zoom + cropping functionality. It is a long-term goal however for my webserver to be 100% self-sustaining, so that I'm not reliant on any third-party websites for anything I do, but I'm not there yet.
Permalink • Comment