Coder Social home page Coder Social logo

gba_mister's Introduction

HW Requirements/Features

The games can run from a naked DE10-Nano with the build-in DDR-RAM. However, using SDRAM is highly recommended, as some games may slowdown or loose sync when using DDR-RAM.

When using SDRAM, it requires 32MB SDRAM for games less than 32MB. 32MB games require either 64MB or 128MB module. SDRAM will be automatically used when available and size is sufficient.

Bios

Opensource Bios from Normmatt is included, however it has issues with some games. Original GBA BIOS can be placed to GBA folder with name boot.rom

PLEASE do not report errors without testing with the original BIOS

Homebrew games are sometimes not supported by the official BIOS, because the BIOS checks for Nintendo Logo included in the ROM, which is protected by copyright. To use these ROMs without renaming or removing the the boot.rom, you can activate the "Homebrew BIOS" settings in OSD. As the BIOS is already replaced at boot time, you must save this settings and hard reset/reload the GBA core.

Status

~1600 games tested until ingame. There is no known official game that doesn't work. Exceptions are games that require rare extra hardware (mostly japanese). Some small video glitches remain, see issue list.

Features

  • saving as in GBA
  • Savestates
  • FastForward - speed up game by factor 2-4
  • CPU Turbomode - give games additional CPU power
  • Flickerblend - set to blend or 30Hz mode for games like F-Zero, Mario Kart or NES Classics to prevent flickering effects
  • Spritelimit - turn on to prevent wrong sprites for games that rely on the limit (opt-in)
  • Cheats
  • Color optimizations: shader colors and desaturate
  • Rewind: go back up to 60 seconds in time
  • Tilt: use analog stick (map stick in Mister Main before)
  • Solar Sensor: Set brightness in OSD
  • Gyro: use analog stick (map stick in Mister Main before)
  • RTC: automatically used, works with RTC board or internet connection
  • Rumble: for Drill Dozer, Wario Ware Twisted and some romhacks
  • 2x Resolution: game is rendered at 480x320 instead of 240x160 pixels

Savestates

Core provides 4 slots to save and restore the state. Those can be saved to SDCard or reside only in memory for temporary use(OSD Option). Usage with either Keyboard, Gamepad mappable button or OSD.

Keyboard Hotkeys for save states:

  • Alt-F1..F4 - save the state
  • F1...F4 - restore

Gamepad:

  • Savestatebutton+Left or Right switches the savestate slot
  • Savestatebutton+Down saves to the selected slot
  • Savestatebutton+Up loads from the selected slot

Rewind

To use rewind, turn on the OSD Option "Rewind Capture" and map the rewind button. You may have to restart the game for the function to work properly. Attention: Rewind capture will slow down your game by about 0.5% and may lead to light audio stutter. Rewind capture is not compatible to "Pause when OSD is open", so pause is disabled when Rewind capture is on.

Spritelimit

There are only very few games known that produce glitches without sprite pixel limit. Those games use the sprite pixel limit automatically. You can optionally also turn this on if you notice problems.

2x Resolution

Only works over HDMI, Analog output is not changed in 2x Resolution mode.

Improved rendering resolution for:

  • Affine background: "Mode7" games, typically racing games like Mario Kart
  • Affine sprites: games that scale or rotate sprites

This rendering is experimental and can cause glitches, as not all game behavior can be supported. Those glitches can not be fixed without gamespecific hacks and therefore will not be fixed. Please don't add bugs in such cases.

Cartridge Hardware supported games

  • RTC: Pokemon Sapphire+Ruby+Emerald, Boktai 1+2+3, Sennen Kazoku, Rockman EXE 4.5
  • Solar Sensor: Boktai 1+2+3
  • Gyro: Wario Ware Twisted
  • Tilt: Yoshi Topsy Turvy/Universal Gravitation, Koro Koro Puzzle - Happy Panechu!
  • Rumble: Wario Ware Twisted, Drill Dozer

If there is a game you want to play that also uses one of these features, but is not listed, please open a bug request.

For romhacks you can activate the option "GPIO HACK(RTC+Rumble)". Make sure to deactivate it for other games, otherwise you will experience crashes.

Not included

  • Multiplayer features like serial communication
  • E-Reader support
  • Gameboy Player features

Information for developers

How to simulate: https://github.com/MiSTer-devel/GBA_MiSTer/tree/master/sim

How to implement a GPIO module: https://github.com/MiSTer-devel/GBA_MiSTer/blob/master/gpio_readme.md

gba_mister's People

Contributors

birdybro avatar frederic-mahe avatar hackshed avatar kitrinx avatar missionfloyd avatar misteraddons avatar neurorulez avatar paulb-nl avatar robertpeip avatar sorgelig avatar wwark avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  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  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

gba_mister's Issues

Turbo mode always enabled on launch

This only started happening with GBA_20200222.rbf Release 20200222. When you load a ROM, playback speed is extremely fast and will only reset to normal speed when I bring up the F12 menu again (making no changes - just simply bring up the menu is enough).

Turbo is set to off in my preferences.

Glitchy Rows of Pixels in Many Games (SSF2T, Advance Wars, etc)

Glitchy rows of pixels showing up in many games. Current workaround is to turn turbo CPU on to clear this up.

The following examples have been noted/recorded: EDIT: NOW FIXED - See below posts for existing issues.

Super Street Fighter 2 Turbo: Revival - at the top of DeeJay's Stage, and on e-honda's stage: https://youtu.be/_u_NGNtMlrc
Watch the top-left corner of the bath in the background while i walk back and forth, at the base of the mountain, to see a glitchy blue line of pixels come and go. There is also a glitchy line of pixels on the ground, which seems to be on every stage.

Advance Wars - Glitchy row of pixels at the top of the text box, as shown here: https://imgur.com/a/8WFIH4B

EDIT: Both of these are now fixed, or confirmed behavior on actual gba - See below posts for existing issues.

When I turn Turbo CPU on, as suggested by the core author in Discord, all of these graphical glitches go away, as shown in the SSF2T video.

Gunstar Super Heroes: Priority issues with transformed sprites

Gunstar Super Heroes uses scaled/rotated sprites liberally, and there are priority issues with those sprites and the status bar.

GunStarSuperheroes_Priority

The screenshot shows the first stage of the second level, but you can observe this bug in the very beginning of the game, when a helicopter carrying enemies appears from above.

Mario vs Donkey Kong graphical glitches

Several graphical glitches noticed in Mario vs Donkey Kong.
Name: Mario vs. Donkey Kong (USA, Australia).gba
CRC32: 25C394D1

The file select menu, chunks around the selected file do not fade in and out smoothly:
main menu

After selecting a level but before the tutorial animation, a frame or two of messed up graphics:
select level

Top Gun - Combat Zones needs to ignore all save types

I noticed the addition of sram quirks. Just wanted to mention the one that stood out to me the most when I was working on GBA stuff. Top Gun - Combat Zones is listed in the Readme as not working. I'd guess that's because it needs some quirks. It actually tries to write all three methods of saving, but doesn't actually have any hardware to save. If the save succeeds for any of the methods, the game breaks. https://zork.net/~st/jottings/GBA_saves.html

Font issue with Fire Emblem (The Blazing Blade)

Some fonts are not displaying in Fire Emblem (The Blazing Blade). Interestingly I didn't have this issue when I first started playing the game. I think I noticed it after the update that added save states and turbo.

I've included a screenshot and a comparison with a screenshot from Higan. Look at the "I" in "Thief".

20200105_172247-Fire Emblem (USA, Australia)

higan

Super Street Fighter 2 Turbo - Graphics Glitches When Activating Supers

Example:
E-Honda stage the lanterns on the sides and the X that shows up on the screen when activating the super, have severe corruption for a couple seconds after activation.
There appear to be glitchy lines through the middle of the screen as well, and I noticed some of the glitchy lines in the parallax scrolling floor as well.

Does not matter which character you pick, when activating super with all of them this happens.

Video:
https://youtu.be/ytIWWUA7Z-Y

Savestate:
Super Street Fighter II Turbo - Revival (USA).zip

mGBA Test Suite - regressions in MiSTer core compared to original core

I noticed there are some regressions in the number of tests that pass vs the original core, and wanted to track that in this bug report. This seems like more of a longer term milestone, rather than something to be quickly fixed.

Here's how it currently stacks up:

Testname TestCount FPGBA MiSTer
Memory 1552 1538 1532
IOREAD 123 123 108
Timing 1660 1408 1408
Timer 936 443 443
Carry 93 93 93
BIOSMath 625 625 625
DMATests 1256 1136 1112

mGBA Test Suite can be found here

EDIT: Corrected "Timing" numbers

Very obvious graphical glitches in Phantasy Star collection

Very obvious graphical glitches are present Playing Phantasy Star in Phantasy Star collection, especially in text.

I am using the US version of the rom.

This happens in both the stable and Accuracy_fixes_10 release present on discord.

UPDATE: I just built the core from the latest sources available on github using Quartus 17.1.1, the issue still occurs.

mfLspqn

Super Mario Advance 4 - World map music on Level 7 sounds weird...

Note: This was not checked against real hardware, so it might be a false positive. If it's the case, please disregard this.

Super Mario Advance 4 (Mario 3) sounds weird in the world map for level 7. It sounds "dragged". Really weird compared to the original game on the NES or even SNES (Super Mario All Stars).

Even my wife said "what's wrong with this Mario game music" when she walked across the room! ๐Ÿ˜‚

I have attached a savestate, if it helps.
Super Mario Advance 4 - Super Mario Bros. 3 (USA, Australia) (Rev 1).zip

Game save doesn't appear to work.

Hi there,

Before we begin, great work on this core, it's amazing to run GBA on a TV without software emulation or a GameCube. Now regarding the saving issue, I tried 2 games so far (Metroid Zero Mission and Kirby and the Amazing Mirror) and they both won't load save data after a cold or a warm boot. I tried with the official BIOS, didn't change anything. I tried the auto-save function as well as the manual and reload function , still didn't work.

Is this an issue with the core or am I doing something wrong?

Classic NES games: controls not working

Controls are not working for e.g. Donkey Kong or Super Mario Bros.

The reason is unclear. The games don't use interrupt for keypad and read the correct value all the time, still the don't recognize the buttons.

The real problem is probably deeper inside the core.

Rewind capture introduces audio skips

Regression: Between the revision 20.01.19 and the rewind version (available on discord), an issue has been introduced, when playing the "FFVIA SNES color+Sound-Opera+CAPS" restoration hack, audio skips happen (very noticeable while playing the intro) on the rewind version which do not occur on the version from 20.01.19

UPDATE: This only appears to occur when rewind capture is on.

Some backgrounds shifted over to the right by 1, wrap onto left side

The 240p Test Suite for GBA has an overscan test that reveals some minor problems. The bottom row of pixels is cut off, and the picture is shifted over to the right by 1 pixel, with the far most right side wrapping over to the left side of the screen.

The strange thing is that not all GBA games draw the right most line on the left most line, in fact, most seem to not do this.

Here's a screenshot:
Screenshot_from_2019-11-24_19-04-10

Since most GBA games don't draw the rightmost line on the left, I looked into what this test is doing, and it seems like it is using BG1 for the outside, so maybe the issue lies there.

Reference: https://github.com/pinobatch/240p-test-mini/blob/master/gba/src/overscan.c#L127

GB channel is too low in pitch - Minish Cap

I'm not sure which part it is, but one of the GB sound channels sounds like it is too low in pitch. I've made some comparison recordings.

MiSTer:

https://cdn.discordapp.com/attachments/497145588446396416/650878863089467392/minish_mister_normalized.flac

GBA:

https://cdn.discordapp.com/attachments/497145588446396416/650878879849906176/minish_gba_normalized.flac

EDIT: See below, it's not 1 octave lower, but the real GBA audio is 150% of MiSTer's in frequency

No video with BIOS file at 720P

I am not getting any video when using a BIOS file at 720P. If I remove the BIOS, the built-in BIOS works. It works with the BIOS at 1080P. I'm using a 1440P monitor and I like to feed it 720P signal for clean upscaling.

As a side note, I'm seeing a lot of video signal drops. I'm not sure, but they look like they only happen when certain things happen in games. Sonic Advance and Sonic Advance 3 lose video when some of the scenes change (from cutscenes to gameplay in the demo, for example).

Gem Smashers character motion glitches sideways a few pixels sometimes

See title. On real hardware, in Gem Smashers, the player character motion sideways is perfectly uniform and smooth.

On all emulators including MiSTer, the character sometimes jumps and skips a few pixels sideways when changing sideways directions close to a brick.

It is a subtle effect that looks like it might have something to do with the mode 7 rendering of main character sprite.

Verified to happen in both MGBA and MiSTer, and I am 95% sure it never happens on real hw (from videos). But I have to wait for my physical cartridge to verify this 100% myself on my NDS hardware.

Sound Crackles for "Full Fat" games

According to bug reports in mGBA, probably related to not accurate enough Timer emulation.
Data for sound is fetched from memory, before it is written there.

Probably there is no easy solution for this, other than fulfill more timer tests, which is out of scope with the current timing concept.

Feature request: Load GB/GBC games in GBA core

There are games like Legend of Zelda Oracle of Ages and Legend of Zelda Oracle of Seasons which have added ingame extras if played on a gba. It would be great if this core could support playing those games so it would be possible to access those extra features.

Street Fighter Alpha 3: Graphics Glitch - Options Highlight

Highlighted options in this game are displaying incorrectly, and covering up the name of the option that is selected:
gba sfa3 menu bug

The original behavior of the game allows you to see the white text of the selected option instead of this opaque green box covering it up.

Video does not work in 4:3 resolutions like 1600x1200

I'm running my Mister on a 4:3 LCD @ 1600x1200. The GBA core loads and can load games, but there is no video. Sound plays and I can hear that I'm moving through menus, but there is no video output.

When I switch to 1920x1080 or 1280x720, everything works, but on a 4:3 screen the video output is smooshed.

The video mode in my mister.ini file is:
video_mode=1,1600,64,192,304,1200,1,3,46,162

Famicon Mini Issues

Hi,

Edit 11/02/2020:

  • hangs issue:

Famicom Mini 22 - Nazo no Murasame Jou - Hangs time to time during the games - Save State : Famicom Mini 22 - Nazo no Murasame Jou (Japan).zip

Famicom Mini 23 - Metroid - Start screen - Sounds and hangs - Save State :
Famicom Mini 23 - Metroid (Japan).zip

Famicom Mini 24 - Hikari Shinwa - Palthena no Kagami - hangs if the caracter died or if your let the start screen appear - save state :
Famicom Mini 24 - Hikari Shinwa - Palthena no Kagami (Japan).zip

Famicom Mini 25 - The Legend of Zelda 2 - Link no Bouken - Hangs if you let the start screen appeared - save state :
Famicom Mini 25 - The Legend of Zelda 2 - Link no Bouken (Japan).zip

Famicom Mini 26 - Famicom Mukashibanashi - Shin Onigashima - Zen, Kouhen - Blue screen and hangs - Save state :
Famicom Mini 26 - Famicom Mukashibanashi - Shin Onigashima - Zen, Kouhen (Japan).zip

Famicom Mini 28 - Famicom Tantei Club Part II - Ushiro ni Tatsu Shoujo - Zen, Kouhen - Hangs if you let run the start menu - save state :
Famicom Mini 28 - Famicom Tantei Club Part II - Ushiro ni Tatsu Shoujo - Zen, Kouhen (Japan).zip

Thanks !

Feature Request: half screen size over HDMI

For the lack of a better place, I would like to request a half size screen option as part of the "aspect ratio" sub menu for HDMI output.
To me, it seems even my 22" monitor is much too big for such low resolution console.
Looks fantastic on CRT with smaller centered image.

Super Street Fighter 2 - Crash when triggering Akuma

So sometimes you can trigger a cutscene with Akuma during normal play. When this happened, the core crashed. Music kept going and OSD works but the game is hung, see picture.

This is using the most up to date official build, 20.01.01.

2020-01-18 (1)

Mario Kart Super Circuit not saving

Tested with US version of the ROM. After clearing a cup, the game says it is saving but it never actually does. No save file is written to disk and when you restart, the save is cleared. This looks like a fairly common GBA game that has save issues due to it requiring a 64 KB save file:

dborth/vbagx#16

Mother 3 might also have this issue, but I still need to test it.

Zoom option?

On the Gameboy interface for the Gamecube using swiss, you have the option of zooming in the image to fill in the screen. I hope this feature can be added to this MiSTer as well. I am using the IO board with at RGB CRT at 480p.

BTW, the Gameboy LLAPI core works in full screen (no black boarders except a little bit on the left and right sides.) For some reason the GBA LLAPI core has black boarders all arounf and is not full screen.

Feature Request: VBA-Colors Shader/Filter

Currently, all games are much brighter than they are supposed to look. This is due to the GBA screen that automatically makes games darker, which the software devs programmed around.

A good test case is Golden Sun. At the beginning it should be dark in the house (aside from the lamps), and it should be dark outside.

This problem plagues emulators as well, which is why it is necessary to play with either the GBA-colors or VBA-colors shader. VBA-colors is more accurate.

Here is how it Golden Sun looks with VBA-colors applied in RetroArch's mgba core:
Golden Sun (USA, Europe)-191209-090033

Here's how it looks on the MiSTer:
20191209_090635

Here is the aforementioned shader: https://raw.githubusercontent.com/libretro/common-shaders/master/handheld/shaders/color/vba-color.cg

Golden Sun sprite priority

Reported here with the Japanese version: http://www.atari-forum.com/viewtopic.php?p=389976#p389976

Save file

l3RYygl
JQVNHRU

This is some interesting behavior. The ice is BG1/2 with priority 2 and the player sprite is sprite 0 with priority 3.

However when the player should be on top of the ice then the game places normal sprites with transparent tiles with priority 2 on top of sprite 0 at sprite 2/3. This changes the priority of sprite 0 to priority 2.

I have (poorly) hacked bld_demo.gba with a hex editor to do the same thing and tested it on GBA hardware and got the same behavior.

Note that this also changes the Semi-Transparent pixels to normal pixels because the blending on the sprite in bld_demo.gba does not happen anymore when Special effects are disabled. mGBA almost has the correct behavior except for this part.

So in summary when a sprite overlaps a sprite with lower priority then the GBA overwrites the priority and Semi-Transparent bit but not the pixels if they are transparent.

Golden Sun - Graphical glitch with battle transitions

Rom info; Golden Sun (USA, Europe), CRC32 E1FB68E8
Build: Newest build with 'cheat support added and topmost lines fixed'

When entering any battle on Golden Sun I get what I can best describe as a black line going vertically in both directions until the battle starts. I am not able to replicate this issue on real hardware. I haven't tested it on the last test build however I do not remember it happening prior on 2 builds ago.

Steps to replicate: Simply enter any battle.

Included is my personal save on the overworld down below (if that's allowed) for easily replicating this issue and to bypass the endless amount of time of slogging through the beginning of the game:

http://www.mediafire.com/file/5yrmu4ew45fn7ln/Golden_Sun_%2528UE%2529_%255B%2521%255D.sav/file

Fire Emblem - Font issues

Some of the fonts are drawn incorrectly on MiSTer currently. I am using Integer Scale and the filter named "No Interpolation" to make sure no filters are causing this

Screenshot from 2019-12-10 23-11-12
Screenshot from 2019-12-10 23-11-37
Screenshot from 2019-12-10 23-12-01
Screenshot from 2019-12-10 23-12-08

Here's my Game Boy Player via GBIHF and an OSSC for comparison

Screenshot from 2019-12-10 23-15-14
Screenshot from 2019-12-10 23-15-27
Screenshot from 2019-12-10 23-15-33
Screenshot from 2019-12-10 23-15-47

Feature Request: Cheat Engine Support for GBA

Well, it is all in the title. Cheat support for GBA would be huge for people like me who have not enough time but would like to experience the amazing library of the GBA with some help.
The Cheat Engine is an amazing feature for cores that have it implemented and it would make the GBA core even greater than it already is.

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.