1. 23 Aug, 2017 1 commit
  2. 10 Nov, 2015 1 commit
    • Screwtape's avatar
      Update to v095r02 release. · b42ab2fc
      Screwtape authored
      byuu says:
      Aspect correction is fixed now. Works way better than in v095 official.
      It's still force-enabled in fullscreen mode. The idea of disabling it is
      that it looks bad at 2x scale. But when you're fullscreen with a minimum
      of 4x scale, there's no reason not to enable it.
      It won't turn on at all for GB/C/A anymore. And I dropped the cute
      attempt at making the aspect prettier on 2560x1600 monitors, so it'll be
      the stock 8:7 across the board now for S/NES.
      Also, the aspect correction will affect the window even when a game's
      not loaded now, so the size won't bounce around as you change games in
      windowed mode between GB/C/A and S/NES.
      I also enhanced the ruby/glx driver. It won't crash if OpenGL 3.2 isn't
      available anymore (fails safely ... had to capture the Xlib error
      handler to suppress that), and it defaults to the MESA glXSwapInterval
      before the SGI version. Because apparently the MESA version defines the
      SGI version, but makes it a no-op. What. The. Fuck. right? But whatever,
      reordering the enumerations fixes the ability to toggle Vsync on AMD
      GPUs now.
      Video shaders are back again. If you are using the OpenGL driver, you'll
      see a "Video Shaders" menu beneath the "Video Filters" menu (couldn't
      merge it with the filters due to hiro now constructing menu ordering
      inside the header files. This works fine though.)
      You want either "higan.exe" + "Video Shaders/" or "~/.local/bin/tomoko"
      + "~/.local/tomoko/Video Shaders/"
  3. 08 Oct, 2015 1 commit
    • Screwtape's avatar
      Deleting ananke and shaders. · b113ecb5
      Screwtape authored
      ananke has been superseded by icarus.
      The new tomoko UI does not support shaders, and if it ever does it will
      probably use another format, so not much point keeping the old files
  4. 20 Jan, 2014 1 commit
    • Screwtape's avatar
      Update to v094 release. · 10464b8c
      Screwtape authored
      byuu says:
      This release adds support for game libraries, and substantially improves
      Game Boy and Game Boy Color emulation with cycle-based renderers. Many
      other changes are also present.
      It's very important to note that this release now defaults to optimal
      drivers rather than safe drivers. This is particularly important if you
      do not have strong OpenGL 3.2 drivers. If performance is bad, go to
      Settings -> Configuration -> Advanced, change the video driver, and
      restart higan. In the rare case that you have trouble opening higan, you
      can edit settings.bml directly and change the setting there. The Windows
      safe driver is Direct3D, and the Linux safe driver is XShm.
      Also note that although display emulation shaders are now supported,
      they have not been included in this release as they are not ready yet.
      The support has been built-in anyway, so that they can be tested by
      everyone. Once refined, future releases of higan will come with built-in
      shaders for each emulated system that simulates the unique display
      characteristics of each.
      Changelog (since v093):
      - sfc: added SA-1 MDR support (fixes SD Gundam G-Next bug)
      - sfc: remove random/ and config/, merge to system/ with better
      - gb: improved color emulation palette contrast
      - gbc: do not sort sprites by X-priority
      - gbc: allow transparency on BG priority pixels
      - gbc: VRAM DMA timing and register fixes
      - gbc: block invalid VRAM DMA transfer source and target addresses
      - gba: added LCD color emulation (without it, colors are grossly
      - gba: removed internal frame blending (use shaders to simulate motion
        blur if desired)
      - gba: added Game Boy Player support (adds joypad rumble support to
        supported games)
      - gba: SOUND_CTL_H is readable
      - gb/gbc: PPU renderer is now cycle-based (major accuracy improvement)
      - gb/gbc: OAM DMA runs in parallel with the CPU
      - gb/gbc: only HRAM can be accessed during OAM DMA
      - gb/gbc: fixed serialization of games with SRAM
      - gb/gbc: disallow up+down or left+right at the same time
      - gb/gbc: added weak hipass filter to remove DC bias
      - gb/gbc: STAT OAM+Hblank IRQs only trigger during active display
      - gb/gbc: fixed underflow in window clamping
      - gb/gbc/gba: audio mixes internally at 2MHz now instead of 4MHz (does
        not affect accuracy)
      - gb/gbc/gba: audio volume reduced for consistency with other systems
      - fc/sfc/gb/gbc/gba: cheat codes are now stored in universal, decrypted
      - ethos: replaced file loader with a proper game library
      - ethos: added display emulation shader support
      - ethos: added color emulation option to video settings
      - ethos: program icon upgraded from 48x48 to 512x512
      - ethos: settings and tools windows now use tab frames (less wasted
        screen space)
      - ethos: default to optimal (video, audio, input) drivers instead of
        safest drivers
      - ethos: input mapping system completely rewritten to support
        hotplugging and unique device mappings
      - ruby: added fixes for OpenGL 3.2 on AMD graphics cards
      - ruby: quark shaders now support user settings inside of manifest
      - ruby: quark shaders can use integral textures (allows display
        emulation shaders to work with raw colors)
      - ruby: add joypad rumble support
      - ruby: XInput (Xbox 360) controllers now support hotplugging
      - ruby: added Linux udev joypad driver with hotplug support
      - phoenix: fixed a rare null pointer dereference issue on Windows
      - port: target -std=c++11 instead of -std=gnu++11 (do not rely on GNU
        C++ extensions)
      - port: added out-of-the-box compilation support for BSD/Clang 3.3+
      - port: applied a few Debian upstream patches
      - cheats: updated to mightymo's 2014-01-02 release; decrypted all Game
        Genie codes
  5. 18 Aug, 2013 1 commit
    • Screwtape's avatar
      Update to v093 release. · 4e2eb238
      Screwtape authored
      byuu says:
      - added Cocoa target: higan can now be compiled for OS X Lion
        [Cydrak, byuu]
      - SNES/accuracy profile hires color blending improvements - fixes
        Marvelous text [AWJ]
      - fixed a slight bug in SNES/SA-1 VBR support caused by a typo
      - added support for multi-pass shaders that can load external textures
        (requires OpenGL 3.2+)
      - added game library path (used by ananke->Import Game) to
      - system profiles, shaders and cheats database can be stored in "all
        users" shared folders now (eg /usr/share on Linux)
      - all configuration files are in BML format now, instead of XML (much
        easier to read and edit this way)
      - main window supports drag-and-drop of game folders (but not game files
        / ZIP archives)
      - audio buffer clears when entering a modal loop on Windows (prevents
        audio repetition with DirectSound driver)
      - a substantial amount of code clean-up (probably the biggest
        refactoring to date)
      One highly desired target for this release was to default to the optimal
      drivers instead of the safest drivers, but because AMD drivers don't
      seem to like my OpenGL 3.2 driver, I've decided to postpone that. AMD
      has too big a market share. Hopefully with v093 officially released, we
      can get some public input on what AMD doesn't like.
  6. 14 Jan, 2013 1 commit
    • Screwtape's avatar
      Update to v092 release. · 032e9244
      Screwtape authored
      In the release thread, byuu says:
          The first official release of higan has been posted. higan is the
          new name for bsnes, and it continues with the latter's version
          Note that as of now, bsnes still exists. It's a module distributed
          inside of higan. bsnes is now specific to my SNES emulator.
          Due to last minute changes to the emulator interface, and missing
          support in ananke, I wasn't able to include Cydrak's Nintendo DS
          emulator dasShiny in this build, but I hope to do so in the next
          For both new and experienced users, please read the higan user guide
      In the v091 WIP thread, byuu says:
          - BS-X MaskROM handling (partial ... need to split bsx/flash away
            from sfc/chip, restructure code - it requires tagging the base
            cart markup for now, but it needs to parse the slotted cart
          - phoenixflags / phoenixlink += -m32
          - nall/sort stability
          - if(input.poll(scancode[activeScancode]) == false) return;
          - MSU1 / USART need to use interface->path(1)
          - MSU1 needs to use Markup::Document, not XML::Document
          - case-insensitive folder listings
          - remove nall/emulation/system.hpp files (move to ananke)
          - remove rom/ram id= checks with indexing
          X have cores ask for manifest.bml (skipped for v092's release, too
            big a change)
          - rename compatibility profile to balanced (so people don't assume
            it has better compatibility than accuracy)
  7. 11 Aug, 2012 1 commit
    • Screwtape's avatar
      Update to v091 release. · 7f404e6e
      Screwtape authored
      byuu says:
      A few issues crept up in the last release, this should take care of
      First, it seems that the 32-bit runtime on 64-bit versions of Windows
      have 64-bit time functions; whereas true 32-bit Windows does not. This
      was causing a DLL error when attempting to load bsnes v090.
      Second, when there were more than 2,000 files in the same folder on
      Windows, it was lagging the file browser. With OV2's help, I've fixed
      that and it'll now load the list instantly.
      Lastly, I've included the missing video shaders this time.
  8. 27 Jan, 2011 1 commit
    • Screwtape's avatar
      Update to v075 release. · 6b410486
      Screwtape authored
      byuu says:
      This release brings improved Super Game Boy emulation, the final SHA256
      hashes for the DSP-(1,1B,2,3,4) and ST-(0010,0011) coprocessors, user
      interface improvements, and major internal code restructuring.
      Changelog (since v074):
      - completely rewrote memory sub-system to support 1-byte granularity in
        XML mapping
      - removed Memory inheritance and MMIO class completely, any address can
        be mapped to any function now
      - SuperFX: removed SuperFXBus : Bus, now implemented manually
      - SA-1: removed SA1Bus : Bus, now implemented manually
      - entire bus mapping is now static, happens once on cartridge load
      - as a result, read/write handlers now handle MMC mapping; slower
        average case, far faster worst case
      - namespace memory is no more, RAM arrays are stored inside the chips
        they are owned by now
      - GameBoy: improved CPU HALT emulation, fixes Zelda: Link's Awakening
      - GameBoy: added serial emulation (cannot connect to another GB yet),
        fixes Shin Megami Tensei - Devichil
      - GameBoy: improved LCD STAT emulation, fixes Sagaia
      - ui: added fullscreen support (F11 key), video settings allows for
        three scale settings
      - ui: fixed brightness, contrast, gamma, audio volume, input frequency
        values on program startup
      - ui: since Qt is dead, config file becomes bsnes.cfg once again
      - Super Game Boy: you can now load the BIOS without a game inserted to
        see a pretty white box
      - ui-gameboy: can be built without SNES components now
      - libsnes: now a UI target, compile with 'make ui=ui-libsnes'
      - libsnes: added WRAM, APURAM, VRAM, OAM, CGRAM access (cheat search,
      - source: removed launcher/, as the Qt port is now gone
      - source: Makefile restructuring to better support new ui targets
      - source: lots of other internal code cleanup work
  9. 26 Dec, 2010 1 commit
    • Screwtape's avatar
      Update to v073 release. · 6ea4bc03
      Screwtape authored
      byuu says:
      This release marks a major step forward, offering full low-level
      emulation of all four DSP coprocessors based on the NEC uPD77C25
      processor core. Many people were responsible for this milestone: Dr.
      Decapitator for the actual decapping and extraction; Lord Nightmare for
      the cartridges and some special analysis tools; myself, Jonas Quinn and
      Cydrak for the uPD77C25 emulation; and all of the donors who raised the
      necessary $1,000 for the necessary hardware and equipment needed to pull
      this all off. To say thanks to the donors, I am releasing the uPD77C25
      emulation core to the public domain, so that everyone can benefit from
      All four DSP emulations will be improved by this by way of having
      realistic timing; the DSP-4 will benefit further as the high-level
      emulation was incomplete and somewhat buggy; and the DSP-3 will benefit
      the most as the high-levle emulation there was not complete enough to be
      playable. As a result, most notably, this means bsnes v073 is the first
      emulator to fully be able to play SD Gundam GX (J)!
      As bsnes' primary goal is accuracy, the LLE DSP support renders the old
      HLE DSP support obsolete. Ergo, I have removed the 166KB of HLE source
      code, and replaced it with the uPD77C25 core, which comprises a mere
      20KB of source code. As this LLE module supports save states, this also
      means that for the first time, DSP-3 and DSP-4 games have save state
      On the other hand, this also means that to run any DSP game, you will
      need the appropriate program ROM. As these are copyrighted, I cannot
      distribute them nor tell you where to get them. All I can do is provide
      you with the necessary filenames and hashes.
      Changelog (since v072 release):
      * added NEC uPD77C25 emulation core
      * added low-level emulation of the DSP-1, DSP-1B, DSP-2, DSP-3, DSP-4
      * removed high-level emulation of the DSP-n coprocessors
      * added blargg's libco::ppc.c module, which is far more portable, even
        running on the PS3
      * added software filter support via binary plugins
      * added debugger (currently Linux-only); but it is as yet unstable
      * added pause shortcut
      * updated mightymo's cheat code database