Homebrew gbaemu4ds: GBA emulator for DS(i) (DSi Entry)

  • Thread starter Thread starter ichichfly
  • Start date Start date
  • Views Views 1,148,913
  • Replies Replies 2,416
  • Likes Likes 32

Is the graphic better if you use the sc Version and the upper screen on a 3DS

  • I can't do that (have no 3DS) (have not tested that)

    Votes: 110 40.1%
  • Yes

    Votes: 48 17.5%
  • No

    Votes: 26 9.5%
  • I don't know

    Votes: 90 32.8%

  • Total voters
    274
the TuT

Step 1:
Run the modified Version of VisualBoyAdvance.exe and run the game you want to patch. The modified VisualBoyAdvance.exe will now collect data while running the game.
Step 2:
Press the Capture Button(normally F12) the VisualBoyAdvance.exe will generate 2 Files (the results.ichfly is the important on)
Step 3:
Start WindowsFormsApplication1.exe and open the gba File and open the results.ichfly as IPS file
Step 4:
Enable Sp wechseln if there was no error while opening the gba file
Step 5:
Click on Start Anzeige
Step 6:
Check if the max PC is to great (the emulator can handle a max PC of about 8300000(hex Val) depending on some other settings in the rom)

Below is a list of found I/O and card accesses

first Val is the place where the instruction that accessed the I/O or card (you can ignore entrys that start with a Val below 2000000).
The second is the Address of the register that was accessed when this function was executed the first time (4XXXXXX = I/O 8000000 and greater = card).
The third is the number of times the instruction was executed.

The patcher is not yet full working only code that is placed in WRAM and only ARM code can be patched. (http://www.daftcode.net/gbatek/cpu#cpuoverview)

kein IRQ is needed if irqs are not disabled
wechsle stack is not working
sichere CPSR if the CPSR is needed to be stored (http://www.daftcode.net/gbatek/cpu#cpuflags)
Used 1 and 2 should always be set to a Register that is not used by the patched instruction
If the instruction is a load instruction it must be marked as zerstörbares Register if it is in the list.

setze pu nds <-- sets the CPU into nds mode at entering the patch (all instructions are executed as if they are nds code (faster)) (required if not already in this mode)
setze pu gba <-- sets the CPU into gba mode after the patch routine
Direct read offset <-- just copy the instruction and adds setze pu nds and/or setze pu gba


Last step create the patch as usual/you can use the hb file that sometimes also fix some bugs

normal.ccc emulates the HBirqs optimized for graphics (only works if the game is patched else the game gets graphic bugs by the lake of CPU or crush(of cause only is used if HBirqs are used (YA)))
half.ccc <-- only every second HBirq is executed
1by4.ccc etc <-- only every forth HBirq is executed
min.ccc only two HBirqs are executed
non.ccc no HBirqs are executed

I tried to follow the guide but after step 6 I don't get it anymore.
Am I suppose to enable/disable several things?
 
No solution then?.

Sorry I don't have any solution for that without breaking compatibility of games, currently

Are you the youngest of siblings? I find they lack common sense.
???
Pokemon FireRed and LeafGreen just keep freezing whenever I encounter wild pokemon... I'm using Galaxy Eagle I btw
load patch.pat as patch. That should fix that problem.
I tried to follow the guide but after step 6 I don't get it anymore.
Am I suppose to enable/disable several things?

I will release an easier Version soon

Add: why is this Update not on the front page ?

Add2: There was an idea to replace the complete GBA "Sappy" sound engine code with my own hyper visor code that would make it possible to generate much better sound than the gba and gba emulator were able to produce and fix some lags. What do you think about that?
 
There was an idea to replace the complete GBA "Sappy" sound engine code with my own hyper visor code that would make it possible to generate much better sound than the gba and gba emulator were able to produce and fix some lags. What do you think about that?
If it fixes some lag, why not? If this would give better sound than the GBA, that would just be plain epic: A GBA emulator that was originally thought to be impossible with better sound than the original GBA.
 
  • Like
Reactions: raystriker
if the new sound engine wont conflict with future game compatibility and just makes this emulator better than the original gba...epic ;)
 
Great ichfly on romulation they're laughing with the fact I told them you made a good emulator
they said it is impossible they said I lied
 
I got the latest version, by the way I can't run :(.
What do I need to do?
DSi XL, AKAIO 1.90 Acekard 2i.
What exactly happens when you try to run? Does the HBMenu mod itself fail to load, or if it the ROM you're trying to load? If it's a ROM, which one are you trying to run, and on which setting?
 
I'm trying to run a goomba color .gba generated run, I try to run with automatic save type, and i press a, in the screen select mode, but nothing happens :(.
I tried to renane the rom, tp gba.gba, and gba.agb but the both don't run :(.
 
Add: why is this Update not on the front page ?
Because this site is run by humans, not all-knowing magical pixies.

Stuff gets front-paged when magazine/news staff become aware of it and choose to do it. PM one of them to let them know.
 
Sorry I don't have any solution for that without breaking compatibility of games, currently


???

load patch.pat as patch. That should fix that problem.


I will release an easier Version soon

Add: why is this Update not on the front page ?

Add2: There was an idea to replace the complete GBA "Sappy" sound engine code with my own hyper visor code that would make it possible to generate much better sound than the gba and gba emulator were able to produce and fix some lags. What do you think about that?

Ahh okay :) And your new sound engine will be competible with all gba games? It sounds great. Ofcourse that is the goal you aim tough xD
 
Because this site is run by humans, not all-knowing magical pixies.

Stuff gets front-paged when magazine/news staff become aware of it and choose to do it. PM one of them to let them know.

Sorry I admit my question was stupid. I thought I would have broken some standard or something like that.
Ahh okay :) And your new sound engine will be competible with all gba games? It sounds great. Ofcourse that is the goal you aim tough xD
Compatible with most games you will need to patch the games.

What is needed to be added before

*patch to relink code
*normal sound code
*make patching easier
The new sound driver should generate a 32.768kHz Sound Playback Frequency instead of the other (normally 5.734,7.884,10.512,13.379, 15.768,18.157,21.024,26.758,31.536,36.314,40.137,42.048) because the sampling frequency after mixing with PWM modulation is 32.768 kHz and run on the arm7 so it dose not use any cpu time. Also there should be no need to call it every frame. <-- I don't know if it will work but I try to make it work.

I'm trying to run a goomba color .gba generated run, I try to run with automatic save type, and i press a, in the screen select mode, but nothing happens :(.
I tried to renane the rom, tp gba.gba, and gba.agb but the both don't run :(.

Try an other homebrew that is known to run well
 
and when alpha 3 going to be released or if it is this time a beta?
I think I will make the new one a beta (that means more testing)

Todolist for beta 1:
make the defaultlist/patcher user-friendly and user-friendly tuts
add missing sound
rewrite some code in asm
impr. swi code

Add: I don't know but not soon
 

Site & Scene News

Popular threads in this forum