⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 readme.txt

📁 psp上的GBA模拟器
💻 TXT
📖 第 1 页 / 共 3 页
字号:
goal, with overall compatability being a near second. Because of this
some games may not run at the favor of running more games significantly
better. Of course, the compatability will improve with time. The
compatability in the current version (0.8) is perhaps around 80%
(assuming the correct BIOS image is used).

Many games will run at their best out of the box, but some games will
run very slowly unless idle loops are taken care of. There is a supplied
ROM database, game_config.txt, that gives idle loop targets and other
settings that may help a game to run better (or at all) on a per-game
basis. Currently (as of version 0.8) a few dozen games are on this list,
mostly only USA versions. This list will continue to be updated; there's
no real telling exactly how many of the ~2500 GBA games will need to
appear here.

gpSP currently requires an authentic GBA BIOS image file to run. It will
make no effort to run without one present; this file is 16kb and should
be called gba_bios.bin and present in the same location as the EBOOT.PBP
file. Please do not ask me where to obtain this, you'll have to look
online or grab it from a GBA. Note that it is not legal to have this file
unless you own a GBA, and even then it's rather gray area.



-- Features --

gpSP mostly emulates the core Gameboy Advance system. As of right now it
does not emulate any special hardware present on various GBA cartridges.


What it emulates:

GBA CPU: All ARM7TDMI ARM and Thumb mode opcodes except block memory w/
 s-bit (probably aren't used in GBA games)
Video: Modes 0, 1, 2 almost completely, basic 3-5 support, sprites,
 windows/OBJ windows
Interrupts: HBlank, VBlank, all timers, all DMA channels, keypad
DMA: Immediate, HBlank, VBlank, sound timer triggered
Sound: Both DirectSound channels and all 4 GBC audio channels
Input: Basic GBA input delivered through PSP controls
Cartridges: Currently supports ROMs up to 32MB in size (the maximum for
GBA) with the technique of ROM page swapping to fit within PSP's RAM.
Backup: 32/64kb SRAM, 64/128kb flash, 512bit/8kb EEPROM
RTC: The real-time clock present in cartridges such as most of the
 Pokemon games and some others.


What it lacks:

Video: No mosaic, bitmap modes lack color effects (alpha, fades),
 there might be some minor inaccuracies in blending...
Cycle accuracy: Very cycle innacurate; CPU is effectively somewhat
 overclocked, meaning games with rampant idle loops will probably run
 rather poorly. DMA transfers effectively happen for free (0 cycle).
 Please do NOT use gpSP as a first source for developing GBA homebrew,
 try No$GBA instead.


Additional features it has:
- The ability to attempt to run games at faster than GBA speed (sometimes
  they can end up a lot faster, other times not so much)
- Savestates: the ability to save a game's state to a file and resume
  playing where you left off later.
- Mild cheat support


Features that it doesn't have (please don't ask me to implement these!)
- Wi-fi multiplayer


-- Controls --

The default control scheme is very simple. If you don't like it you can
change it in the configuration menu.

At the ROM selection screen:

Up/down: navigate current selection window.
Left/right: switch between file window and directory window.
Circle/start: select current entry.
Square: go one directory up.

In game:

Up/down/left/right: GBA d-pad
Circle: GBA A button
Cross: GBA B button
Square/start: GBA start button
Select: GBA select button
Left trigger: GBA left trigger
Right trigger: GBA right trigger
Triangle: Adjust frameksip

In frameskip adjustment:

Hold down triangle to keep up, press up/down to increase/decrease
frameskip, respectively. Press down at 0 to change to auto, and up
at auto to change to 0.

In the menu:

Up/down: navigate current menu.
Left/right: change value in current menu selection (if a value is present)
Circle/start: select current entry (see help for entry to see what this means)
Square: exit the current menu.


-- Frameskip --

The purpose behind frameskip is to cause the emulator to not render every
frame of graphics to make the emulation closer to fullspeed. Many games will
run fullspeed without skipping any frames, however, some (particularly more
graphically demanding ones) will require this.

Frameskip can be set to two forms, either auto or manual. Auto will attempt
to skip only as many frames as necessary to make the game full speed, and
will not skip more than 4 in a row no matter what speed the game runs at
(at this point the benefits of frameskip yield diminishing returns).

It is recommended that you keep frameskip on auto, but manual is maintained
as an option if you want it and works as follows:

Manual frameskip will only render one out of every (n + 1) frames, where n
is the current frameskip value (so 0 will render everything). Increasing
the frameskip can improve speed, especially with very graphically
intensive games.


-- Cheats --

Currently, gpSP supports some functionality of Gameshark/Pro Action Replay
cheat codes. To use these, you must first make a file with the same name
as the ROM you want the cheat code to apply to, but with the extension .cht.

To write a code, write the type of model it is, gameshark_v1, gameshark_v3,
PAR_v1, or PAR_v3. gameshark_v1/PAR_v1 and gameshark_v3/PAR_v3 respectively
are interchangeable, but v1 and v3 are not! So if you don't know which
version it is, try both to see if it'll work.

Then, after that, put a space and put the name you'd like to give the cheat.

On the next several lines, put each cheat code pair, which should look like
this:

AAAAAAAA BBBBBBBB

Then put a blank line when you're done with that code, and start a new code
immediately after it. Here's an example of what a cheat file should look
like:


gameshark_v3 MarioInfHP
995fa0d9 0c6720d2

gameshark_v3 MarioMaxHP
21d58888 c5d0e432

gameshark_v3 InfHlthBat
6f4feadb 0581b00e
79af5dc6 5ce0d2b1
dbbd5995 44b801c9
65f8924d 2fbcd3c4

gameshark_v3 StopTimer
2b399ca4 ec81f071


After you have written the .cht file, you have to enable the cheats
individually in the game menu. Go to the Cheats/Misc menu, and you will
see the cheats; turn them on here. You may turn them on and off as you
please, but note that some cheats may still hold after you turn them off,
due to the nature of the system. Restart to completely get rid of them.

IMPORTANT NOTES:

This is still very work in progress! I basically added this in only 1.5
or so hours, and I don't have a lot of time right now to work on it
before releasing. So I'll probably improve it later.

Not all of gameshark's features are supported, especially for v3. Only
basic cheats will work, more or less.

Cheats may be unstable and may crash your game. If you're having problems
turn the cheats off.

Really, there's no guarantee that ANY cheats will work; I tried a few and
some seem to work, others are questionable. Try for yourself, but don't
expect anything to actually work right now. Do expect this feature to
improve in future versions.



-- Frequently Asked Questions --

Q) How do I run this on my PSP?

A) Provided is an EBOOT.PBP which will run as is on a 1.0 firmware
   PSP or custom firmware that can run unsigned EBOOTs. On 1.5 firmwares
   you must use a kxploit tool to run it (try SeiPSPtool). On 2.0
   firmwares and higher further exploits must be used - see
   http://pspupdates.qj.net/ for more information. Note that I have NOT
   tested this emulator on any firmware version besides 1.5, and it's
   very possible that it doesn't run well, or at all on higher versions.
   Therefore I strongly recommend you downgrade if possible, and use
   Devhook to run games that require > 1.5 version firmwares.

   Be sure to include in the same directory as the EBOOT.PBP file the
   game_config.txt file included and the gba_bios.bin file which you
   must provide yourself.

   gpSP does not run on PSPs with version 2.71 or higher firmware yet,
   nor does any other homebrew executable.


Q) What is a BIOS image file? Why do I need it to run gpSP? Other GBA
   emulators don't require this...

A) The GBA BIOS image file is a copy of a ROM on the GBA system that
   has code for starting up the GBA (it shows the logo), verifying the
   game, and most importantly, providing utility functions for the games
   to use. It is the latter that gpSP needs the BIOS present for. It's
   possible to replace all of these functions with equivilent code, but
   this will take time - in the future gpSP may not require a BIOS image.


Q) I can't find this BIOS image.. please send it to me.

A) Sorry, but you're on your own. I won't send you a BIOS or tell you
   where to get one (unless you want to rip it from a GBA yourself, in
   which case I'll just give you the same link at the top). I can't do
   this because it's not legal to send it around and I don't want to
   get a reputation for illegally distributing BIOS images.


Q) How do I know I have the right BIOS?

A) If you have md5sum you can check if it has this hash:
   a860e8c0b6d573d191e4ec7db1b1e4f6
   That BIOS should work fine. I think that some others work fine too,
   although I haven't confirmed this with absolute certainty. It's also
   theoretically possible to use custom (and free) BIOS replacements,
   but I don't know of any publically availablone ones.

   As far as I'm aware there are two BIOSes floating around, I doubt
   you'll get one that isn't one of those two. There's a very easy way
   to determine which one you have - just look at the very first byte in
   a hex editor. The correct BIOS begins with 0x18, the buggy BIOS begins
   with 0x14.


Q) My favorite game won't run.

A) There probably isn't anything you can do about this, although a
   change to game_config.txt might help. gpSP is still an emulator in
   its infancy so the compatability is not superb. I don't have time
   to test too many games so I'm releasing it as a public beta to get
   a feel for some things that don't work. The next version could
   perhaps fix it, or it might never run. There are always other
   emulators of course, please try one.

   However, before nagging me there is one thing I recommend you try,
   and that is to add the option "iwram_stack_optimize = no" for the
   game in game_config.txt. See the file itself for more information
   on how to do this. If this fixes your game (and it's not already
   in the game_config.txt) please tell me about it.


Q) My favorite game is very slow.

A) Emulating GBA takes a number of resources and getting it done well
   on PSP is no simple task by any means. Some games are just going to
   overwhelm the emulator completely. Of course, there is one special
   case of game (a lot of early generation games fall under this
   category) that can be made much faster by a simple addition to the
   game_config.txt file. Wait for a new version of this file or the
   next version of the emulator and the game may be improved.

   That aside, there are still numerous optimizations that can be done,
   and I sure you future versions will be faster (I just can't tell you
   how much)

   Also, a lot of games will be sped up considerably by adding an
   idle_loop_eliminate_target line for it in game_config.txt. There
   are some more obscurer options there that can improve speed too. If
   the game is VERY slow there might be something wrong with its
   emulation that can be improved. For instance, if you can't get a game
   to run fullspeed on any frameskip you should e-mail me about it.


⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -