Giter Site home page Giter Site logo

libretro / beetle-wswan-libretro Goto Github PK

View Code? Open in Web Editor NEW
17.0 17.0 47.0 23.74 MB

Standalone hard fork of Mednafen WonderSwan to libretro, itself a fork of Cygne

License: GNU General Public License v2.0

Makefile 2.55% C 87.42% Objective-C 0.26% C++ 1.08% Perl 0.01% Python 8.32% SourcePawn 0.35%

beetle-wswan-libretro's People

Contributors

albertofustinoni avatar andres-asm avatar bananarama203 avatar claudiuslollarius avatar clobber avatar crystalct avatar disastermo avatar ficoos avatar fpscan avatar fr500 avatar gregorr avatar heuripedes avatar hizzlekizzle avatar inactive123 avatar jdgleaver avatar liberodark avatar libretroadmin avatar lioncash avatar locvez avatar meepingsnesroms avatar natinusala avatar nattycleopatra avatar negativeexponent avatar pinumbernumber avatar sergiobenrocha2 avatar tatsuya79 avatar themaister avatar toadking avatar webgeek1234 avatar yoshisuga avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

beetle-wswan-libretro's Issues

[WIIU] Loading an existing save file in Kaze no Klonoa freezes the console

While it works fine on first attempt, trying to load Kaze no Klonoa - Moonlight Museum (Japan).ws a second time makes the console slow to a crawl and soon freeze completely, requiring a hard power off by holding the Wii U POWER Button for at least four seconds. The emulated screen is initialized, but nothing ever appears on it and there are no log messages either written to file or over network debugging. Leaving the core running in this state for a couple of minutes will cause the title screen jingle to play its first couple of notes, extremely slowly and stuttering. After this, the console seems to be entirely locked up and is completely unresponsive.

It seems likely that the issue is related to the reading to save files somehow. To get the game back to a working state, you must delete the associated .srm file. This issue will immediately recur upon the next launch after this, however. Saving does not appear to be broken across the board, I have been successful in saving my game in other titles. I am not able to reproduce the issue on a current (at HEAD) Windows x86_64 build from the buildbot, causing me to suspect this is related to endianness (the Wii U is a big-endian platform). I'm not able to test any other BE platforms to confirm whether the same issue occurs there.

This issue is occurring on ea00c1d, the latest commit as of filing.

I am set up for compiling Wii U builds, so I'm happy to build and try any speculative fixes.

EDIT: I'm now suspecting this may be SD corruption related or something and not a beetle-wswan issue at all. Just to be safe I ran a chkdsk on my SD card, deleted the Klonoa save and ROM and started over fresh, and now I can't seem to reproduce this again. Will reopen if it recurs and I can confirm it's not a hardware issue, otherwise closing for now.

Rotate screen direction is wrong on 3DS

I've been using RetroArch installed on a Nintendo 3DS.

Using the select button to rotate the screen and buttons (#5) is a very neat solution for games that require it, but on the 3DS it's rotating the screen the wrong way (portrait mode is upside-down).

Is there / could there be an option for which way to rotate the screen? Thanks.

landscape portrait

Dicing Knight. not working

As the title says, after loading, the screen flashes indefinitely and the game does not start.
Tested with both a clean japanese and english patched roms, with previously created save files deleted just to be sure.

[Wii U] Black screen when loading content

The core loads just fine, but when loading a content it only display a black screen, it doesn't freeze the app though, I can exit to the menu back and forth.

The last working build:

  • core: 1.6.9 WonderSwan v.0.9.35.1 415e97e
  • RA GIT: (24-12-2017) 89bd389

First broken build:

  • core: 1.7.0 WonderSwan v.0.9.35.1 fd18010
  • RA GIT: (25-12-2017) 0a2b442

Clock Tower stuck on black screen.

I was trying to run Clock Tower for wonderswan via Retroarch. And sadly its getting stuck on black screen after watching cutscenea after selecting start game same thing happens with quick start.

Judgement Silversword - Rebirth Edition doesn't load

With Judgement Silversword - Rebirth Edition the first time it is loaded you see a brief status screen, then the ROM just opens to either a solid blue screen or flashes a bunch of random colors. Every subsequent attempt after that just goes straight to the flashing colors/blue screen.

Apparently there was a fix for this game on Mednafen 1.23.0 but I'm not sure if that update is backported to this core or not already?

Tested with 2 different Redump files:
Judgement Silversword - Rebirth Edition (Japan) (Rev 5C21)
Judgement Silversword - Rebirth Edition (Japan) (Rev 4321)

RetroArch 1.9.8
Beetle wswan build b631efb

image

Versioning scheme

Well could you start to use versions like Major.Minor.Patch for your releases?

[Feature Request]Separate control setting for WSC core two srceen modes

WSC has two sreen modes:landscape and portrait. Please separate control setting for them. Reference Matsu WSC Emulator.
In Hunter X Hunter - Sorezore no Ketsui, normal is landscape. But when you push the Yโ†“ in area selection, it change to portrait. Then you have to rotate left your controller. You have to push the left stick and axis. It's so hard to control.
One setting for landscape and another for portrait. Custom the key what you want. They are independent.

[Switch] Double speed in-game

It's a bug that has been appearing for long in this core, but just now I report it.
It happens that if you load a content it will run super fast (maybe x2 or x3), the only workaround is exiting to RA menu and resume the game, that way it runs at normal speed.

Not sure if it only happen on Switch or other platforms.

Latest build tested 98ff3de

.sav files defaulting to system directory even with savefile directory defined.

I'm using a retroarch.cfg override (where I have a retroach.cfg file in folders by core) with retropie. I get the same results with --appendconfig

I've set the savefile directory to

savefile_directory = /home/pi/RetroPie/roms/saves/

and savestate directory to

savestate_directory = /home/pi/RetroPie/roms/states/

The savestate directory seemed to work but the savefile directory did not, it always defaults to the system directory

This seems to be a common issue with most mednafen (Beetle) cores.

See

libretro/beetle-psx-libretro#19

RetroPie/RetroPie-Setup#1266

RetroPie/RetroPie-Setup#1162

Based on this comment: libretro/beetle-psx-libretro#19 (comment) It would likely would need to be done for all the Mednafen (beetle) cores.

Missing Input Map Options

When comparing input mapping to Mednafen, I see 2 inputs missing:

;wswan, Built-In, Gamepad: Rapid A
;wswan, Built-In, Gamepad: Rapid B

They aren't listed in the Mednafen WSWAN documentation, but they are exposed during mapping and are visible in the Mednafen.cfg file.

Is there a reason they are not exposed for mapping in RetroArch or is this a bug?

(This makes it impossible to play horizontally oriented games)

Update core to 1.23.0

Mednafen was recently updated with several corrections of this emulator and it would be nice to include them to improve those small errors. I don't know if some have already been applied, but since the core only reflects that it is in 0.9.35.1, they supposedly were not added.

After 0.9.35.1 this is what they changed:

  • WonderSwan: Added experimental, undocumented support for interfacing with trap15's WonderFence program, which provides MobileWonderGate emulation; controlled via settings "wswan.excomm" and "wswan.excomm.path". This support is currently only available on UN*X-like platforms.
  • WonderSwan: Added SRAM size calculation for the raw header value of 0x05(used by MobileWonderGate).
  • WonderSwan: Corrected the SRAM size calculation for the raw header value of 0x04(used by Dicing Knight and Judgement Silversword).
  • WonderSwan: Rewrote RTC emulation code to avoid runtime use of C library time functions(fixing potential desync issues when using netplay and input-recording movies), and fixed the time initialization code to reflect the current local time instead of UTC.
  • WonderSwan: Resolved a few compiler warnings.
  • WonderSwan: Save/Load relevant WSR playback state in save states during WSR playback.
  • WonderSwan: Add strict checking for proper save game memory file size on game load(NOTE: this will cause problems for Dicing Knight and Judgment Silversword save game memory files written with Mednafen versions prior to 0.9.36).
  • WonderSwan: Added partial emulation(just enough to get it to work) of the WonderWitch's flash ROM, so that the WonderWitch firmware will boot now, and can be used with the "wswan.excomm" and "wswan.excomm.path" settings/functionality.
  • WonderSwan: Removed erroneous constraints that were preventing opposing X* and Y* buttons from being pressed simultaneously, and changed the names of the the X* and Y* buttons used during input configuration, per tip from trap15.
  • WonderSwan: Fixed off-by-1 bugs in window coordinate evaluation, per tip from trap15.
  • WonderSwan: Fixed copyright notice headers to not allow distribution under versions of the GPL other than version 2(an oversight from back when the Cygne code was added to Mednafen).
  • WonderSwan: Applied sound and DMA emulation fixes from trap15; fixes rain sound effect in "Star Hearts". The changes did necessitate lowering the overall WonderSwan sound emulation volume a bit to prevent excessive clipping, however.
  • WonderSwan: Removed setting "wswan.rotateinput", and added a new device("gamepadraa") that can be selected on virtual input port 1 to automatically rotate inputs when the display is rotated.

As always, thank you very much for the effort and this is only to remember that it is pending to update the core.

Games which require rotation mid-game are horribly inconvenient in RetroArch.

I'm pretty sure I filed an issue on this back when the Mednafen cores were all on a single GitHub project, but that project and its issues seem to be gone, so I'll quickly run through the problem again.

Obviously, the WonderSwan as a platform is intended to be physically rotated in the hands of the player. This maps poorly to platforms which aren't intended to be physically rotated, which is probably all of the platforms RetroArch is compiled for.

This can mostly be worked around on RetroArch by using rotation in the video settings and some per-game remap files, which allow vertical games to be played in the correct orientation and button layout. It could still be more convenient, but it's workable.

However, there are games which require the player to alternate rotation mid-game, the most notable of these being Kaze no Klonoa. Levels in this game take place in alternating orientations, i.e. the first level is horizontal, the second level is vertical, etc. It's still possible to play this game with extreme dedication by returning to RGUI constantly to swap the button mapping and screen rotation, but frankly only going to be enjoyable to a vanishingly small segment of users.

A partial solution I would suggest is a core option, specific to WonderSwan/Color, which rotates the display by 270 degrees (90 degrees left) and remaps the controls such that the Y buttons are positioned on the RetroPad D-Pad, the X buttons are positioned on the face buttons, and the A/B buttons are positioned on the L/R shoulder buttons.

In this way, a single core option toggle would swap both the game and inputs to be sensible for rotated play, rather than having to swap both screen rotation and button mapping separately.

An even better solution would be if this behavior could be mapped to a single button press (best candidate is RetroPad Select; the WonderSwan has no Select button).

There is one major problem here, which is what happens if users have custom remapped their buttons so the rotated button layout becomes non-sensible? Bad stuff, I guess. WonderSwan is such an awkward edge case for this stuff, I know.

[Feature Request] Different device type or default control labels for pc2 games

While controls can be remapped manually, the labels heavily misalign with the Pocket Challenge V2's control scheme. Whether via a device type switch (manual) or just via a label change (automatic), it'd be nice if the labels could change to be accurate for the PCv2's controls.

An image comparing the consoles:
pcv2_3

I'm not entirely sure how the controls map at this time, but I could work it out if someone wants to try implementing this.

Makefile possibly can't build for OSX.

In this snippet, uname -a is searched for "win", then "Darwin" to determine what OS to go for. But, "win" is contained in Dar"win", so it will always result in building for windows.

else ifneq ($(findstring win,$(shell uname -a)),)
platform = win
else ifneq ($(findstring Darwin,$(shell uname -a)),)
platform = osx
endif

[Q] Colorization of mono games hack

I am trying to hack a colorization option for mono games, similar to what i've done with the VirtualBoy some years ago.

It looks more tricky than my previous attempt since this system seems to be using a dynamic grayscale palette.

Btw i'd like to hack an SGB-like color palette directly into the code, so it can be used on in the 3DS which has no shaders support.

While i am still studying the code, do you think this is doable?
(i am open to suggestions for a possible implementation)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.