PSP Emulator for PC

Electronics/유틸리티 2008. 5. 30. 04:10 Posted by 헬리르

플스 1에뮬로 psx 가 거의 완벽한 수준에 도달했고,
최근엔 플스 2 에뮬로 Pcsx2 가 발전 중이었건만,
왜 PSP 플레이어/에뮬은 소식이 없었을까 하는 의문이 얼마전 문득 들었습니다.

실제로 PSP용으로 제작된 페이트/타이가 콜로세움 도 받아둬놓고 썩히던 차에
오랫만에[?] 인터넷을 정처없이 떠돌아 다니다 결국은 발견해버리고 말았습니다.


요녀석입니당.

단지 문제는, 아쉽게도 거의 초기형 수준이고,
더이상 업글도 없었던 듯 하군요.
솔직히 PSP 자체로도 플레이 스테이션 [포터블] 아닙니까.
들고 다니면서 하는 그 편리성, 휴대성 덕분에, 그리고 [PSP 전용] 게임은
없었다는 점에 미루어 볼때, PSP 에뮬의 진화/필요성은 그닥 없었는지도 모르지요.

뭐 어쨋건, 최소한 있구나, 정도로.
그리고 혹시 저처럼 [PSP를 사기는 아깝지!] 라고 생각하시는 분들은,
한번쯤 받아서 연구해 보셔도 좋을 듯 합니다.

응? 그게 뭔소리야. 라고 하시는분들이 계시다면 당연히 이래 대답합니다.
[도대체 어찌 쓰는건지 모르겠습니다!! ㅋㅋㅋㅋ.................;;;]

원문 Readme 파일 (파일 내부에도 있음) 입니다.
==============================================================================
Potemkin (Codename DaSH)
Experimental HLE PSP Emulator
  
Henrik Rydg?d  (aka ector)
hrydgard@gmail.com  (ONLY developer questions and similar)

Released under the GPL since I got bored of fixing stupid bugs and adding functionality to my HLE-simulated PSP OS.

Features:  (end-user point of view :)
  - Plays Puzzle Bobble Pocket JAP
  - Starts AI Go
  - Runs numerous demos from the PSP SDK
 
Technical Features:
  - Badly simulated PSP kernel
  - No VFPU emulation
  - Mounts ISOs and CSOs (no DAX!)
  - Mounts Windows directories (no good UI yet for this)
  - (FUTURE) Supports game-specific patching through UltraHLE-style INI file
 
HLE code structure:
  Internal functions begin with __Kernel. These are called when multiple real HLE functions
  share code, or when other code wants to affect the PSP kernel, such as loading modules, etc.
 
 
 
  TODO:
    * Timing system
    * Investigate skinning sample
 * Eventflags (Gradius, locoroco, etc)
 * Proper sound
 * Proper FPL (spongebob)
    * DelayThread (bomberman)
    * Investigate bad ISO reading
    * Investigate raw sector reading (GTA for example)
    * Remaining VFPU instructions, for katamari and PQ
    * sceUtilitySaveData, MsgBox
    * Memstick Detection (2001: [R4 08971050 ]: HLE: sceIoDevctl("mscmhc0:", 02025806, 00000000, 0, 09fbbca0, 4) (z_un_0897101c)
 * Fake PSMF and MPEG
 * Atrac using the dll
    * ReferSemaStatus (outrun)
    * VBlank interrupt
    * Callbacks
    * Real thread ready queue
   
 
Compatibility List:

Playable:
  Pinball (breaks if I fix waitforvblank)
  Puzzle Bobble Pocket (some graphics missing)
  Puyo Puyo - Nearly perfect!
  [none]

Ingame:
  AI Go (AI hangs)

Title Screen / menus:
  Frantix - crashes the emu while loading
  Carol's Sudoku - title screen, waiting for callback? async io callback? (seems to work without)
 
Craps on the screen:
  Koloomn - seems to run, but only shows blank screen
  Wipeout Pure - Sector Reading
  Namco Museum - Now Loading , DelayThread
  Namco Museum Battle Collection - Now Loading , DelayThread
  Star Soldier - Hudson logo
  EVery Extend Extra - ?
 
Not working primary reasons:
  Astonishia Story - DelayThread
  BomberMan - DelayThread
  Dragon Ball - DelayThread
  Lumines - DelayThread
  Me and My Katamari - DelayThread or Vblank interrupt
 
  Outrun - PollSema, Sector Reading
  GTA LCS - Sector Reading //SavedataInit, Wakeup
  Bust A Move Ghost - Sector Reading - 088ea0cc is value that gets added to lba
  Burnout - Sector Reading, Waitforvblank rotatequeue
 
  Dead To Rights - Just draws, no vsync :P
  Death Jr - Illegal reads, kaboom, self restarts
  Football Manager - Failing to alloc memory (slightly too much)
 
 
  Fifa Street - VFPU + the unknown SysMemUserForUser functions
  Gurumin - Unknown syscall, mailbox, infinite loop
 
  Mercury - Bizarre zero pointer -> failing internal allocs
  XI Colisseum - broken ISO code
  Pacman World Rally - broken ISO code, bizarre async issues
 
  MotoGP - sceUtilityMsgBox missing
  Kao - sceUtilityMsgBox missing    [DrawSync (hacked for now), GP relocs (dunno if important), ]
  Virtua Tennis - savedata getstatus
  Breath of Fire - SaveDataGetStatus, reading the smae file over and over???
 
  Tiger Woods - Bizarre memory problems
 
  Nana Subeta wa Daimaou no Omichibiki - VFPU, Blasts display lists full of zeroes Bad Semaphore
 
  Noryoko Trainer - Bad math, Tries to open files called (null)
 
  Practical Intelligence Quotitient : Draws black stuff
 
  Slotter Up Core - Semaphores, VFPU
 
  Smart Bomb - Jump to 0000000 088fbde4
 
  Spongebob - FPL
 
  Ultra Z fighting - Shuts down
 
  World Poker Tour - Needs MPEG / Atrac faking
  Go Sudoku - PSMF video
 
  Hot Shots Golf - need VBlank interrupt
  Capcom 3 in 1 Demo - EVentflags, unknown syscalls
  Loco Roco Full - WaitEventFlag, Vblank interrupt
  Loco Roco Demo - Vblank interrupt, sceDemoMod sceKernelGetThreadStackFreeSize

  Formula One - Uses 4 new kernel functions
  Fired Up - bad semaphores
 
  Tony Hawk Underground Remix 2 - VFPU, illegal reads, kaboom
 
  Kuru - Illegal memory write 0888e9a8
  Need For Speed Most Wanted - Open UMD0: bizarre results, loop forever
 
  Exit - Semaphores
 
  Street Fighter - Font, wakeup stuff ?sceKernelCancelWakeupThread
  Coded Arms - Callback? Scheduler? weird things + some unknown APIs
  Ape Escape 1 - ReferThreadStatus? SleepThread?
  Viewtiful Joe - Scheduling? vblank timing
 
  Mega Man Maverick Hunter X - lots of various problems. TODO: make allocations aligned!
  Dragon Quest And Final Fantasy - UmdActivate / UmdGeterrorStat
 
  Gradius - Async I/O 
  Lemmings - Async I/O (bizarre stuff, keeps retrying)
  Untold Legends - Async I/O
  Valkyrie Profile - Async I/O problem, 665: [MIPS32 R4K 088ca59c ]: MEM: Illegal 32-bit read at ffff84b0 (un_088ca594)
  Gripshift - Async I/O
 
  Monkey Ball - Thinks it's in Dev, Tries to read from host0: !  sceIoOpen 08a56000
  Pocket Racers - Thinks it's in Dev, Tries to read from host0: ! test at 089c2a7c, read from 090F93B8
  (30236)v1 90D761C v0 in initvarious, the key is in "InitUMD"
  Cars - BOOT.BIN was zeroed!
  X-Men 2 - BOOT.BIN was zeroed!
  Miami Vice - BOOT.BIN was zeroed!
  Mega Man Powered Up - BOOT.BIN was zeroed!
 
  Metal Gear Acid - seems to have custom PRX modules! Need to link them in or reverse engineer :(         
  Metal Gear Acid 2 - seems to have custom PRX modules! Need to link them in or reverse engineer :(         
  Ape Academy 2 - Semaphore, Custom prx?
   
TODO:
  * Investigate common looking bugs above


 
PSPSDK BSD-compatible copyright notice (Some parts of the PSPSDK were used in this emulator (defines, constants, headers))

Copyright (c) 2005  adresd
Copyright (c) 2005  Marcus R. Brown
Copyright (c) 2005  James Forshaw
Copyright (c) 2005  John Kelley
Copyright (c) 2005  Jesper Svennevid
All rights reserved.

Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions
are met:
1. Redistributions of source code must retain the above copyright
   notice, this list of conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the above copyright
   notice, this list of conditions and the following disclaimer in the
   documentation and/or other materials provided with the distribution.
3. The names of the authors may not be used to endorse or promote products
   derived from this software without specific prior written permission.

THIS SOFTWARE IS PROVIDED BY THE AUTHORS ``AS IS'' AND ANY EXPRESS OR
IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY DIRECT, INDIRECT,
INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
==============================================================================
ㄲㄲ;;;
혹시 구동하는데 성공하더라도,
안되는 게임이 훨~씬 많군요 지금 이 버전은.
타이가 콜로세움을 돌려보려고 해도 안됐던 것은 당연한 걸까...

앞으로 대학도 컴공과나 소프트웨어로 가볼 생각이니, 묻혀뒀다가 나중에 한번
건드려봐야할것 같습니다.
[=ㅅ=....왠지 안하고 그냥 PSP 살래~가 될것 같기도 하지만;;]

현재 뭐 심심하면 이것저것 건드려보고 있는 참이니
혹시 성공하면 구동기도 다음에 올려보도록 하겠습니다 'ㅅ'/

그럼 오랫만에 무성의한 포스팅을 주로 하는 헬찡이었습니다 ㅎㅎ...

P.S. 아니면 아예 아이폰/아이팟 터치 용으로 PSP 플레이어를...?
       왠지 좋은 생각이 아닐까요! ㅋㅋㅋ...