• Print

no$psx 1.4


no$psx is a PlayStation emulator / debugger for Windows.

The Emulation should be complete with all hardware features fully implemented and working, though as by now it's tested with only a dozen of games, so there may be still some problems with other games (bug reports are welcome).

The BIOS is emulated via a BIOS-clone, which is free and faster than the original PSX-BIOS. There may be still some compatibilty issues (especially as most PSX games are applying patches the to original BIOS; the BIOS clone is reproducing known patches, but may fail on unknown ones). In case of problems, it may be recommended to use a copy of the original BIOS (with filename PSX-BIOS.ROM in no$psx folder).

CDROMs are supported via real CDROM drive, via complete disk images (in .NRG or .CUE+BIN format), via single-track images (.ISO files), or as raw executables (.EXE files).

Requirements are 1-2GHz, which is maybe not so fast (other PSX emulators are said to be working at 200MHz). CPU emulation is currently done on the fly (I might get that faster by using pre-compiled code in future versions). Rendering is done by software (I could maybe improve speed by adding dual core processor support) (another way would be using hardware acceleration, but my experiences are that this stuff isn't too pixel accurate, if it's working at all).

Debugging/Development functions include disassembler, debugger, breakpoints, assembler, I/O map viewer, VRAM viewer, polygon viewer, TTY console window, and complete PSX hardware specs.


19 Mar 2013 no$psx v1.4

  • gpu: vram-fill-cmd: fixed size/wrapping/rounding/masking for GP0(02h)
  • gpu: vram-copy-cmd: fixed size/wrapping (die hard trilogy 2 uses xsiz=FFFEh)
  • cdrom loader: loads some relevant cdrom "root" sectors (with date/region info)
  • cdrom: for .exe files, forwards region from EXE header to cdrom licence sector
  • cdrom: produces SCEx string matched to region (from cdrom licence sector)
  • cdrom: supports setloc+play (without seek command) (used by Tactics Ogre)
  • video: matches game-window-height to pal/ntsc region (and width to 4:3 ratio)
  • video: allows free game window sizing (with snapping near N*100% zoom factors)
  • controls: automatic analog/digital joypad mode support (based on iso date)
  • controls: emulates analog joypad (with analog axes, config cmds, and L3/R3)
  • controls: emulates analog joystick (with ID=5A53h, without L3/R3 buttons)
  • controls: emulates namco-guncon-lightgun (via mouse)
  • controls: emulates sony-mouse-controller (via mouse)
  • controls: emulates dancemat (via Q,W,E,A,D,Z,X,C or numeric keypad)
  • controls: suppresses L3/R3 buttons in digital joypad mode
  • help: added caution on delay between slot.sel and 1st.cmd.byte (analog pad)
  • help: added plugging and unplugging cautions for controllers and memory cards
  • help: added info on analog joypad range (mechanical/digital/centering areas)
  • help: added dance mat specs (as far as known; which leaves many questions)
  • help: added notes on unknown mouse bits and on konami lightgun "x0h" byte
  • help: added lots of basic info on the different psx fishing controllers
  • help: added some basic info on i-mode adpator (part number and list of games)
  • help: added note on super-early irq10 lightgun patch (hooked 00000080h vector)
  • help: added multitap specs (memcard access, and two controller access methods)
  • help: added note on BIOS "buNN:" support (and problems) for multitap slots A-D
  • help: added note on cdrom auto-pause function for end-of-audio-tracks
  • help: added component list/chipset pin-out for multitap and digital/analog pad
  • help: corrected guncon specs (VERY different as in sporting clays source code)
  • help: corrected gpu vram fill/copy command specs (size/wrapping/rounding/etc)
  • help/cdrom: specs and support for older v1 (and v0) .cdz file format versions
  • controls: allows to assign analog-PC-axis as digital-PSX-button (xbox 360 pad)
  • debug: added optional joypad-command logging to TTY window (see TTY menu bar)
  • bios: pad_card_sweep_stuck_ack (when possible sweep stuck ack before access)
  • bios: pad_card_timeout_value (prevent hanging on stuck ack during access)
  • bios: pad_card_post_sel_delay (for slow devices like mouse and analog joypad)






blog comments powered by Disqus