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

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.3%
  • Yes

    Votes: 48 17.6%
  • No

    Votes: 26 9.5%
  • I don't know

    Votes: 89 32.6%

  • Total voters
    273

piratesephiroth

I wish I could read
Member
Joined
Sep 5, 2013
Messages
3,453
Trophies
2
Age
103
XP
3,233
Country
Brazil
Sorry for the delay, bart2465.

This basic guide about how to create .pat files is based on what ichfly has posted so far in the thread.
What do the patches do? I have no idea.
If some option isn't mentioned, it's because its purpose isn't clear to me or we've been told to ignore it.

Step 1 - VBA
  • Run that modified VisualBoy Advance and open your ROM. Let it run for a little time, like until the title screen, or, according to ichfly, until the point it slows down in gbaemu4ds (maybe works if it crashes there too?)
  • Press F12 to take a screenshot. A file called results.ichfly will be saved in the screenshots folder (or your rom folder if you haven't changed the settings)

    CZaHYHY.png
You can keep VisualBoy Advance running. You might need it later on.


Step 2 - Patcher.exe.
  • Run patcher.exe.
    d7PfbQj.png


    For 'GBA Datei', click Open and select your ROM.
    For 'IPS Datei, click Open and select your results.ichfly
    If the patcher loaded the GBA file without any error message, tick the box 'change sp'.


    Now Press 'show patch'.
A window called 'dump Anzeiger' appears.
dXuujul.png
  • First of all, check the value in 'Max PC'.
    kbBbG8z.png

    If it's higher than 8300000, then the game simply won't work in gbaemu4ds and you can quit right now.
  • Each entry in the list has 3 values. The 1st one is where the instruction was in memory and the 3rd one is how many times it was executed.

    aXAQMcu.png


    You need to add patches for all instructions that have been executed over 100 times.
  • To start making a patch, you have to click on one of the entries in the list.
    Ignore the checkboxes, they don't work right now.
Click on a line. You'll see a new window called 'ADD'.

xwgpLUj.png
  • Now you have to select an offset in the listbox in the left side and pick 2 registers (Used 1 and Used 2) that aren't being used by that instruction

    vmvqYlm.png


    To find out which registers to pick, you have to take a look at the Visualboy Advance that's running your game and go to Tools > Disassemble.
  • Take the instruction's offset (first of the 3 values) of that entry you selected in 'dump Anzeiger', write it in the empty field in the emulator's Disassembler window and hit 'Go'.
    You'll land at the instruction.

    5WIW38N.png


    Now you can see which registers are being used (r1, r2, r3, etc..).
    In the 'ADD' window you just pick 2 that aren't mentioned in the instruction.
  • If there's more than one offset in the listbox, you have to open 2 Memory Viewer windows in VisualBoy Advance (Tools > Memory Viewer) side by side.
    In one you jump to the instruction's offset (remember, first of the 3 values).
    In the other you jump to the first offset in the 'ADD' listbox. Compare the values you see. If everything matches, it's the correct choice. If the values are different, try the next one.
  • After you're sure of everything, you can hit 'Apply'.
    CLICK 'APPLY' ONLY ONCE. The patcher doesn't have any kind of check for repeated patches, nor can remove a patch. If you hit the button more than once, you'll add multiple copies of the patch and end up with a corrupted .pat file.​
  • There's no way to know what patches you've already added, so you'd better take notes of everything you do just is case something goes wrong.
Back to the main window.
  • Now all you have to do is press 'Generate' to save your .pat file.
    The patcher will pop up an error message saying that results.ichfly is 'not an ips file'... but you can just ignore that.

    If the game has graphic glitches, you can select one of the .ccc files as the 'HB Datei' before generating the pat file.
    Which one to choose? I have no idea. You can just generate multiple pat files, selecting a different .ccc file each time, anyway.

KNOWN BUGS:
Tha patcher doesn't disable the 'dump Anzeiger' window after you click on a line to open the 'ADD' window, so try to avoid clicking on another entry (or even the same one) and opening a second 'ADD' window by mistake and not knowing which is which.

Everytime you hit 'Apply' a new patch is added, so be careful and only press it once and when you're really sure everything is correct. There's no undo option. One mistake and you'll have to close the program and start again from scratch.

The program may crash randomly when you click on a line to add a patch. Good luck with that!
 
  • Like
Reactions: Fishaman P

bart2465

Well-Known Member
Newcomer
Joined
Sep 5, 2012
Messages
45
Trophies
0
Age
25
Location
at home
XP
87
Country
Netherlands
thank you for the tutorial, but i'm facing some problems:
1. what must 1 do when i get a lot of offsets?
mCOTk6A.png

2. this i what i get when i use my patch.pat
FBU5Aqy.jpg

3. this is when i use no patch
3SUM8jy.jpg

4.what am i doing wrong?
5. does patcher.exe work with windows 8 (thats what im using)
6. maby could someone else make a patch for wwp?
 

Fishaman P

Speedrunner
Member
Joined
Jan 2, 2010
Messages
3,322
Trophies
1
Location
Wisconsin
Website
twitch.tv
XP
2,191
Country
United States
I don't think a patch would help.
"Undefined ARM Instruction 00000000" sounds like a bug in the emulator. Not that I know how the emulator works, but it looks like the hypervisor is reading game content (e.g. music, sprites, etc.) as code, and that doesn't work.

Also, use spoilers next time please. Those images are huge.
 

piratesephiroth

I wish I could read
Member
Joined
Sep 5, 2013
Messages
3,453
Trophies
2
Age
103
XP
3,233
Country
Brazil
bart2465 said:
1. what must 1 do when i get a lot of offsets?
I explained it in the guide... I think I'll have to add pics to make it clearer.

ichichfly said:
that should fix the known bugs at last I hope http://www.mediafire.com/download/8b23sh9r0vs2p7c/WindowsFormsApplication1.exe I still have problems with the thumb code (I just can't find the bug)
You added this '1 ADD window limit' but there's this little bug if we close the 'ADD' window through the red X. It behaves like the window was still open and refuses to open a new one.
 

bart2465

Well-Known Member
Newcomer
Joined
Sep 5, 2012
Messages
45
Trophies
0
Age
25
Location
at home
XP
87
Country
Netherlands
I don't think a patch would help.
"Undefined ARM Instruction 00000000" sounds like a bug in the emulator. Not that I know how the emulator works, but it looks like the hypervisor is reading game content (e.g. music, sprites, etc.) as code, and that doesn't work.

Also, use spoilers next time please. Those images are huge.

i don't get ''Undefined ARM Instruction 00000000'' when i don't use a patch. maby I made a mistake with making the patch.
 

kubikill

Member
Newcomer
Joined
Sep 22, 2013
Messages
7
Trophies
0
Age
28
XP
68
Country
Poland
Tested Rhythm Tengoku on this emulator.
Game works fine, no missing sprites... But is HARD to play without music. Still, I got a OK rating on first mini-game.
 

Fishaman P

Speedrunner
Member
Joined
Jan 2, 2010
Messages
3,322
Trophies
1
Location
Wisconsin
Website
twitch.tv
XP
2,191
Country
United States
Thought I'd pop in and ask, is this still able to run in DSi mode, or is it limited to Slot-1 DS flashcards?
IIRC the emulator still has internal optimizations for DSi-Mode, but something with the SD card DLDI driver is currently broken, and there's no point to fixing it for a maximum of 250 users.
 

ichichfly

Well-Known Member
OP
Member
Joined
Sep 23, 2009
Messages
619
Trophies
1
XP
1,075
Country
Gambia, The
Yeah, I suppose I forgot to include those users.
But even CookHax doesn't work on the latest firmware. I would use it myself if I could.

Well it works when you hook the eeprom to an FPGA and when the DSi first read the data return an normal save and when the DSi code is lunched return the hacked save but I have not done that...
Another way is to go trough a 3DS hack and switch it to DSi compatibility mode (I don't have a 3DS exploit that work on my Version ...)

Add : DSi mode is no more supported at all new Versions
 

LcdaceRules

Member
Newcomer
Joined
Mar 7, 2013
Messages
8
Trophies
0
Age
34
XP
58
Country
Hi all
Im not really that good with programation, or patchs and complicated program design
So im here to ask if the authors (idk if it's only ichfly or if someone's helping him out) could make a ReadMe txt for guys like me...
I'm onto playing pokemon hacked roms, and i got pokemon fuligin to work, but none of the others do... the start image appears saying the year of the game and all, but doesnt go any further, and some strange codes appear on the log in the other screen
What im really asking here is if the authors of the program (or anybody else that knows a lot about this ^^) could make a ReadMe explaining how to get roms that dont work... to work
Any suggestion is welcome :)
Best regards and keep up the awesome work with this emu :)
 

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
  • K3Nv2 @ K3Nv2:
    They still have but it's like $10 cookies honestly not a bad deal for $5
  • K3Nv2 @ K3Nv2:
    Bidenomics
  • BigOnYa @ BigOnYa:
    True, everything almost double nowadays
  • K3Nv2 @ K3Nv2:
    But I could go to Aldis and get a cookie pie for like $4
  • BigOnYa @ BigOnYa:
    Or use your new cooking pan and make some, don't mind the Old leftover foods mixed in.
  • K3Nv2 @ K3Nv2:
    Just eat plain flour around cops
  • BigOnYa @ BigOnYa:
    thats Gluten abuse, they would shoot you
  • K3Nv2 @ K3Nv2:
    Depends on the color chart
  • K3Nv2 @ K3Nv2:
    Wheat flour has a lower chance at survival
  • Veho @ Veho:
    Isn't wheat flour the whitest of the white?
  • Veho @ Veho:
    Rye would get shot at sight.
    +1
  • K3Nv2 @ K3Nv2:
    Depends
    img_5941-1.jpeg
    everyone mixing their flour now days
  • Veho @ Veho:
    That's whole wheat, right? Because all purpose flour is also made from wheat.
  • K3Nv2 @ K3Nv2:
    I'm not a flour expert I just snort it
  • BigOnYa @ BigOnYa:
    There also is black rice flour, and its really black colored
  • Veho @ Veho:
    Bruh that's gray.
  • K3Nv2 @ K3Nv2:
    That's ancientboi color
    +1
  • Veho @ Veho:
    You need to add some activated charcoal.
    +1
  • BigOnYa @ BigOnYa:
    I've seen some that are dark dark, my wifey uses it sometimes in her bs recipes
  • Veho @ Veho:
    Cool.
  • SylverReZ @ SylverReZ:
    @BigOnYa, Seems like your wifey likes hers black. :creep:
  • Veho @ Veho:
    "BS" stands for "Bowel Scraping" because that's what whole grain does.
    +1
    Veho @ Veho: "BS" stands for "Bowel Scraping" because that's what whole grain does. +1