Beetle PSX is a fork of the Mednafen PSX module for Libretro, it currently runs on Linux, macOS and Windows.
This core is under GPLv2 license.
RPI0/RPI1 | RPI3 | RPI4/RPI400 | RPI5 | ODROID XU4 | OGA/OGS/RG351 | PC | RG353 |
---|---|---|---|---|---|---|---|
❌ | ❌ | ✅ | ✅ | ❌ | ✅ | ✅ | ✅ |
Feature | Supported |
---|---|
Restart | ✔ |
Screenshots | ✔ |
Saves | ✔ |
States | ✔ |
Rewind | ✔ |
Core Options | ✔ |
RetroAchievements | ✔ |
RetroArch Cheats | ✔ |
Controls | ✔ |
Remapping | ✔ |
Multi-Mouse | ✔ |
Rumble | ✔ |
Disk Control | ✔ |
Filename | Description | MD5 | Provided |
---|---|---|---|
scph5500.bin | Japanese PS1 BIOS - required for japanese games | 8dd7d5296a650fac7319bce665a6a53c | ❌ |
scph5501.bin | American PS1 BIOS - required for american games | 490f666e1afb15b7362b406ed1cea246 | ❌ |
scph5502.bin | European PS1 BIOS - required for europena games | 32736f17079d0b2b7024407c39bd3050 | ❌ |
Put the bios like this:
┣ 📁 recalbox
┃ ┣ 📁 share
┃ ┃ ┣ 📁 bios
┃ ┃ ┃ ┣ 🗒 scph5500.bin
┃ ┃ ┃ ┣ 🗒 scph5501.bin
┃ ┃ ┃ ┣ 🗒 scph5502.bin
Isos must have the extension:
Put the isos like this:
┣ 📁 recalbox
┃ ┣ 📁 share
┃ ┃ ┣ 📁 roms
┃ ┃ ┃ ┣ 📁 psx
┃ ┃ ┃ ┃ ┣ 🗒 game.bin
┃ ┃ ┃ ┃ ┣ 🗒 game.cue
The isos using Redump format are highly recommended.
For more information about isos, go to this tutorial!
To be able to keep your custom configurations during an upgrade, we advise you to use our configuration override feature.
You can configure various options in two different ways.
┣ 📁 RetroArch Menu
┃ ┣ 📁 Core options
┃ ┃ ┣ 🧩 Name_option
retroarch-core-options.cfg
:┣ 📁 recalbox
┃ ┣ 📁 share
┃ ┃ ┣ 📁 system
┃ ┃ ┃ ┣ 📁 configs
┃ ┃ ┃ ┃ ┣ 📁 retroarch
┃ ┃ ┃ ┃ ┃ ┣ 📁 cores
┃ ┃ ┃ ┃ ┃ ┃ ┣ 🧩 retroarch-core-options.cfg
Options | Options values | Variables (for configuration override) | Variables values |
---|---|---|---|
Internal GPU Resolution | 1x (Native) ✅ / 2x / 4x / 8x / 16x |
beetle_psx_internal_resolution |
1x(native) / 2x / 4x / 8x / 16x |
Internal Color Depth | 16 bpp (Native) ✅ / 32 bpp |
beetle_psx_depth |
16bpp(native) / 32 bpp |
Dithering Pattern | 1x (Native) ✅ / Internal Resolution / Disabled |
beetle_psx_dither_mode |
1x(native) / internal resolution / disabled |
Texture UV Offset | Enabled ✅ / Disabled |
beetle_psx_scaled_uv_offset |
enabled / disabled |
Texture Filtering | Nearest ✅ / SABR / xBR / Bilinear / 3-Point / JINC2 |
beetle_psx_filter |
nearest / SABR / xBR / bilinear / 3-point / JINC2 |
Exclude Sprites from Filtering | Disabled ✅ / Opaque Only / Opaque and Semi-Transparent |
beetle_psx_filter_exclude_sprite |
disable / opaque / all |
Exclude 2D Polygons from Filtering | Disabled ✅ / Opaque Only |
beetle_psx_filter_exclude_2d_polygon |
disable / opaque / all |
Adaptive Smoothing | Disabled ✅ / Enabled |
psx_adaptive_smoothing |
disabled / enabled |
Supersampling (Downsample to Native Resolution) | Disabled ✅ / Enabled |
psx_super_sampling |
disabled / enabled |
Multi-Sampled Anti Aliasing | 1x (Default) ✅ / 2x / 4x / 8x / 16x |
psx_msaa |
1x / 2x / 4x / 8x / 16x |
MDEC YUV Chroma Filter | Disabled ✅ / Enabled |
psx_mdec_yuv |
disabled / enabled |
Track Textures | Disabled ✅ / Enabled |
beetle_psx_track_textures |
disabled / enabled |
Dump Textures | Disabled ✅ / Enabled |
beetle_psx_dump_textures |
disabled / enabled |
Replace Textures | Disabled ✅ / Enabled |
beetle_psx_replace_textures |
disabled / enabled |
Wireframe Mode (Debug) | Disabled ✅ / Enabled |
beetle_psx_wireframe |
disabled / enabled |
Frame Duping (Speedup) | Disabled ✅ / Enabled |
psx_frame_duping |
disabled / enabled |
Display Internal FPS | Disabled ✅ / Enabled |
beetle_psx_display_internal_fps |
disabled / enabled |
Display Full VRAM (Debug) | Disabled ✅ / Enabled |
beetle_psx_dispaly_vram |
disabled / enabled |
Analog Self-Calibration | Disabled ✅ / Enabled |
beetle_psx_analog_calibration |
disabled / enabled |
Enable DualShock Analog Mode Toggle | Disabled ✅ / Enabled |
beetle_psx_analog_toggle |
disabled / enabled |
DualShock Analog Mode Combo | L1 + L2 + R1 + R2 + Start + Select / L1 + R1 + Select ✅ / L1 + R1 + Start / L1 + R1 + L3 / L1 + R1 + R3 / L2 + R2 + Select / L2 + R2 + Start / L2 + R2 + L3 / L2 + R2 + R3 / L3 + R3 |
beetle_psx_analog_toggle_combo |
l1+l2+r1+r2+start+select / l1+r1+select / l1+r1+start / l1+r1+l3 / l1+r1+r3 / l2+r2+select / l2+r2+start / l2+r2+l3 / l2+r2+r3 / l3+r3 |
DualShock Analog Mode Combo Hold Delay | 0 Second Delay / 1 Second Delay / 2 Seconds Delay / 3 Seconds Delay / 4 Seconds Delay / 5 Seconds Delay |
beetle_psx_analog_toggle_hold |
0 / 1 / 2 / 3 / 4 / 5 |
Port 1: Multitap Enable | Disabled ✅ / Enabled |
beetle_psx_enable_multitap_port1 |
disabled / enabled |
Port 2: Multitap Enable | Disabled ✅ / Enabled |
beetle_psx_enable_multitap_port2 |
disabled / enabled |
Gun Input Mode | Light Gun ✅ / Touchscreen |
beetle_psx_gun_input_mode |
lightgun / touchscreen |
Gun Cursor | Cross ✅ / Dot / Disabled |
beetle_psx_gun_cursor |
cross / dot / off |
Port 1: Gun Crosshair Color | Red ✅ / Blue / Green / Orange / Yellow / Cyan / Pink / Purple / Black / White |
beetle_psx_crosshair_color_p1 |
red / blue / green / orange / yellow / cyan / pink / purple / black / white |
Port 2: Gun Crosshair Color | Blue ✅ / Red / Green / Orange / Yellow / Cyan / Pink / Purple / Black / White |
beetle_psx_crosshair_color_p2 |
blue / red / green / orange / yellow / cyan / pink / purple / black / white |
Mouse Sensitivity | 5% / 10% / 15% / 20% / 25% / 30% / 35% / 40% / 45% / 50% / 55% / 60% / 65% / 70% / 75% / 80% / 85% / 90% / 95% / 100% ✅ / 105% / 110% / 115% / 120% / 125% / 130% / 135% / 140% / 145% / 150% / 155% / 160% / 165% / 170% / 175% / 180% / 185% / 190% / 195% / 200% |
beetle_psx_mouse_sensitivity |
5% / 10% / 15% / 20% / 25% / 30% / 35% / 40% / 45% / 50% / 55% / 60% / 65% / 70% / 75% / 80% / 85% / 90% / 95% / 100% / 105% / 110% / 115% / 120% / 125% / 130% / 135% / 140% / 145% / 150% / 155% / 160% / 165% / 170% / 175% / 180% / 185% / 190% / 195% / 200% |
NegCon Twist Responses | Linear ✅ / Quadratic / Cubic |
beetle_psx_negcon_response |
linear / quadratic / cubic |
NegCon Twist Deadzone | 0% ✅ / 5% / 10% / 15% / 20% / 25% / 30% |
beetle_psx_negcon_deadzone |
5% / 10% / 15% / 20% / 25% / 30% |
Memory Card 0 Method (Restart Required) | Libretro ✅ / Mednafen |
beetle_psx_use_mednafen_memcard0_method |
libretro / mednafen |
Enable Memory Card 1 (Restart Required) | Enabled ✅ / Disabled |
beetle_psx_enable_memcard1 |
enabled / disabled |
Shared Memory Cards (Restart Required) | Enabled ✅ / Disabled |
beetle_psx_shared_memory_cards |
enabled / disabled |
Memory Card Left Index | 0 ✅ / 1 / 2 / 3 / 4 / 5 / 6 / 7 / 8 / 9 / 10 / 11 / 12 / 13 / 14 / 15 / 16 / 17 / 18 / 19 / 20 / 21 / 22 / 23 / 24 / 25 / 26 / 27 / 28 / 29 / 30 / 31 / 32 / 33 / 34 / 35 / 36 / 37 / 38 / 39 / 40 / 41 / 42 / 43 / 44 / 45 / 46 / 47 / 48 / 49 / 50 / 51 / 52 / 53 / 54 / 55 / 56 / 57 / 58 / 59 / 60 / 61 / 62 / 63 |
beetle_psx_memcard_left_index |
0 / 1 / 2 / 3 / 4 / 5 / 6 / 7 / 8 / 9 / 10 / 11 / 12 / 13 / 14 / 15 / 16 / 17 / 18 / 19 / 20 / 21 / 22 / 23 / 24 / 25 / 26 / 27 / 28 / 29 / 30 / 31 / 32 / 33 / 34 / 35 / 36 / 37 / 38 / 39 / 40 / 41 / 42 / 43 / 44 / 45 / 46 / 47 / 48 / 49 / 50 / 51 / 52 / 53 / 54 / 55 / 56 / 57 / 58 / 59 / 60 / 61 / 62 / 63 |
Memory Card Right Index | 0 / 1 ✅ / 2 / 3 / 4 / 5 / 6 / 7 / 8 / 9 / 10 / 11 / 12 / 13 / 14 / 15 / 16 / 17 / 18 / 19 / 20 / 21 / 22 / 23 / 24 / 25 / 26 / 27 / 28 / 29 / 30 / 31 / 32 / 33 / 34 / 35 / 36 / 37 / 38 / 39 / 40 / 41 / 42 / 43 / 44 / 45 / 46 / 47 / 48 / 49 / 50 / 51 / 52 / 53 / 54 / 55 / 56 / 57 / 58 / 59 / 60 / 61 / 62 / 63 |
beetle_psx_memcard_right_index |
0 / 1 / 2 / 3 / 4 / 5 / 6 / 7 / 8 / 9 / 10 / 11 / 12 / 13 / 14 / 15 / 16 / 17 / 18 / 19 / 20 / 21 / 22 / 23 / 24 / 25 / 26 / 27 / 28 / 29 / 30 / 31 / 32 / 33 / 34 / 35 / 36 / 37 / 38 / 39 / 40 / 41 / 42 / 43 / 44 / 45 / 46 / 47 / 48 / 49 / 50 / 51 / 52 / 53 / 54 / 55 / 56 / 57 / 58 / 59 / 60 / 61 / 62 / 63 |
PGXP Operation Mode | Disabled ✅ / Memory Only / Memory + CPU (Buggy) |
beetle_psx_pgxp_mode |
disabled / memory only / memory + CPU |
PGXP 2D Geometry Tolerance | Disabled ✅ / 1px / 2px / 3px / 4px / 5px / 6px / 7px / 8px |
beetle_psx_pgxp_2d_tol |
disabled / 1px / 2px / 3px / 4px / 5px / 6px / 7px / 8px |
PGXP Primitive Culling | Disabled ✅ / Enabled |
beetle_psx_pgxp_nclip |
disabled / enabled |
PGXP Vertex Cache | Disabled ✅ / Enabled |
beetle_psx_pgxp_vertex |
disabled / enabled |
PGXP Perspective Correct Texturing | Disabled ✅ / Enabled |
beetle_psx_pgxp_texture |
disabled / enabled |
Line-to-Quad Hack | Default ✅ / Aggressive / Disabled |
beetle_psx_line_render |
default / aggressive / disabled |
Widescreen Mode Hack | Disabled ✅ / Enabled |
beetle_psx_widescreen_hack |
disabled / enabled |
Widescreen Mode Hack Aspect Ratio | 16:10 / 16:9 ✅ / 18:9 / 19:9 / 20:9 / 21:9 / 32:9 |
beetle_psx_widescreen_hack_aspect_ratio |
16:10 / 16:9 / 18:9 / 19:9 / 20:9 / 21:9 / 32:9 |
CPU Frequency Scaling (Overclock) | 50% / 60% / 70% / 80% / 90% / 100% (Native) ✅ / 110% / 120% / 130% / 140% / 150% / 160% / 170% / 180% / 190% / 200% / 210% / 220% / 230% / 240% / 250% / 260% / 270% / 280% / 290% / 300% / 310% / 320% / 330% / 340% / 350% / 360% / 370% / 380% / 390% / 400% / 410% / 420% / 430% / 440% / 450% / 460% / 470% / 480% / 490% / 500% / 510% / 520% / 530% / 540% / 550% / 560% / 570% / 580% / 590% / 600% / 610% / 620% / 630% / 640% / 650% / 660% / 670% / 680% / 690% / 700% / 710% / 720% / 730% / 740% / 750% |
beetle_psx_cpu_freq_scale |
50% / 60% / 70% / 80% / 90% / 100%(native) / 110% / 120% / 130% / 140% / 150% / 160% / 170% / 180% / 190% / 200% / 210% / 220% / 230% / 240% / 250% / 260% / 270% / 280% / 290% / 300% / 310% / 320% / 330% / 340% / 350% / 360% / 370% / 380% / 390% / 400% / 410% / 420% / 430% / 440% / 450% / 460% / 470% / 480% / 490% / 500% / 510% / 520% / 530% / 540% / 550% / 560% / 570% / 580% / 590% / 600% / 610% / 620% / 630% / 640% / 650% / 660% / 670% / 680% / 690% / 700% / 710% / 720% / 730% / 740% / 750% |
GTE Overclock | Disabled ✅ / Enabled |
beetle_psx_gte_overclock |
disabled / dnabled |
Skip BIOS | Disabled ✅ / Enabled |
beetle_psx_skip_bios |
disabled / enabled |
Override BIOS (Restart Required) | Disabled ✅ / PSP PS1 BIOS / PS3 PS1 BIOS |
beetle_psx_override_bios |
disabled / psxonpsp / ps1_rom |
Renderer (Restart Required) | Hardware (auto) ✅ / Hardware (OpenGL) / Hardware (Vulkan) / Software |
beetle_psx_renderer |
hardware / hardware_gl / hardware_vk / software |
Software Framebuffer | Enabled ✅ / Disabled |
beetle_psx_renderer |
enabled / disabled |
CPU Dynarec | Disabled (Beetle Interpreter) ✅ / Max Performance / Cycle Timing Check / Lightrec Interpreter |
beetle_psx_cpu_dynarec |
disabled / execute / execute_once / run_interpreter |
Dynarec Code Invalidation | Full ✅ / DMA Only (Slightly Faster) |
beetle_psx_dynarec_invalidate |
full / dma |
Dynarec DMA/GPU/MDEC/Timer Event Cycles | 128 (Default) ✅ / 256 / 384 / 512 / 640 / 768 / 896 / 1024 / 1152 / 1280 / 1408 / 1536 / 1664 / 1792 / 1920 / 2048 |
beetle_psx_dynarec_eventcycles |
128 / 256 / 384 / 512 / 640 / 768 / 896 / 1024 / 1152 / 1280 / 1408 / 1536 / 1664 / 1792 / 1920 / 2048 |
Dynarec SPU Samples | 1 (Default) ✅ / 4 / 16 |
beetle_psx_dynarec_spu_samples |
1 / 4 / 16 |
Core-Reported FPS Timing | Progressive Rate (Default) ✅ / Force Interlaced Rate / Allow Automatic Toggling |
beetle_psx_core_timing_fps |
force_progressive / force_interlaced / auto_toggle |
PAL (European) Video Timing Override | Disabled ✅ / Enabled |
beetle_psx_pal_video_timing_override |
disabled / enabled |
Crop Overscan | Enabled ✅ / Disabled |
beetle_psx_crop_overscan |
enabled / disabled |
Additional Cropping | Disabled ✅ / 1px / 2px / 3px / 4px / 5px / 6px / 7px / 8px / 9px / 10px / 11px / 12px / 13px / 14px / 15px / 16px / 17px / 18px / 19px / 20px |
psx_image_crop |
disabled / 1px / 2px / 3px / 4px / 5px / 6px / 7px / 8px / 9px / 10px / 11px / 12px / 13px / 14px / 15px / 16px / 17px / 18px / 19px / 20px |
Offset Cropped Image | -12px / -11px / -10px / -9px / -8px / -7px / -6px / -5px / -4px / -3px / -2px / -1px / Disabled ✅ / +1px / +2px / +3px / +4px / +5px / +6px / +7px / +8px / +9px / +10px / +11px / +12px |
psx_image_offset |
-12px / -11px / -10px / -9px / -8px / -7px / -6px / -5px / -4px / -3px / -2px / -1px / disabled / +1px / +2px / +3px / +4px / +5px / +6px / +7px / +8px / +9px / +10px / +11px / +12px |
Horizontal Image Offset (GPU Cycles) | -40 / -39 / -38 / -37 / -36 / -35 / -34 / -33 / -32 / -31 / -30 / -29 / -28 / -27 / -26 / -25 / -24 / -23 / -22 / -21 / -20 / -19 / -18 / -17 / -16 / -15 / -14 / -13 / -12 / -11 / -10 / -9 / -8 / -7 / -6 / -5 / -4 / -3 / -2 / -1 / 0 ✅ / +1 / +2 / +3 / +4 / +5 / +6 / +7 / +8 / +9 / +10 / +11 / +12 / +13 / +14 / +15 / +16 / +17 / +18 / +19 / +20 / +21 / +22 / +23 / +24 / +25 / +26 / +27 / +28 / +29 / +30 / +31 / +32 / +33 / +34 / +35 / +36 / +37 / +38 / +39 / +40 |
beetle_psx_image_offset_cycles |
-40 / -39 / -38 / -37 / -36 / -35 / -34 / -33 / -32 / -31 / -30 / -29 / -28 / -27 / -26 / -25 / -24 / -23 / -22 / -21 / -20 / -19 / -18 / -17 / -16 / -15 / -14 / -13 / -12 / -11 / -10 / -9 / -8 / -7 / -6 / -5 / -4 / -3 / -2 / -1 / 0 / +1 / +2 / +3 / +4 / +5 / +6 / +7 / +8 / +9 / +10 / +11 / +12 / +13 / +14 / +15 / +16 / +17 / +18 / +19 / +20 / +21 / +22 / +23 / +24 / +25 / +26 / +27 / +28 / +29 / +30 / +31 / +32 / +33 / +34 / +35 / +36 / +37 / +38 / +39 / +40 |
GPU Resterizer Overclock | 1x (Native) ✅ / 2x / 4x / 8x / 16x / 32x |
beetle_psx_gpu_overclock |
1x(native) / 2x / 4x / 8x / 16x / 32x |
Core Aspect Ratio | Corrected ✅ / Uncorrected / Force 4:3 / Force NTSC |
beetle_psx_aspect_ratio |
corrected / uncorrected / 4:3 / ntsc |
Initial Scan Line - NTSC | 0 ✅ / 1 / 2 / 3 / 4 / 5 / 6 / 7 / 8 / 9 / 10 / 11 / 12 / 13 / 14 / 15 / 16 / 17 / 18 / 19 / 20 / 21 / 22 / 23 / 24 / 25 / 26 / 27 / 28 / 29 / 30 / 31 / 32 / 33 / 34 / 35 / 36 / 37 / 38 / 39 / 40 |
psx_initial_scanlines |
0 / 1 / 2 / 3 / 4 / 5 / 6 / 7 / 8 / 9 / 10 / 11 / 12 / 13 / 14 / 15 / 16 / 17 / 18 / 19 / 20 / 21 / 22 / 23 / 24 / 25 / 26 / 27 / 28 / 29 / 30 / 31 / 32 / 33 / 34 / 35 / 36 / 37 / 38 / 39 / 40 |
Last Scan Line - NTSC | 210 / 211 / 212 / 213 / 214 / 215 / 216 / 217 / 218 / 219 / 220 / 221 / 222 / 223 / 224 / 225 / 226 / 227 / 228 / 229 / 230 / 231 / 232 / 233 / 234 / 235 / 236 / 237 / 238 / 239 ✅ |
psx_last_scanlines |
210 / 211 / 212 / 213 / 214 / 215 / 216 / 217 / 218 / 219 / 220 / 221 / 222 / 223 / 224 / 225 / 226 / 227 / 228 / 229 / 230 / 231 / 232 / 233 / 234 / 235 / 236 / 237 / 238 / 239 |
Initial Scan Line - PAL | 0 ✅ / 1 / 2 / 3 / 4 / 5 / 6 / 7 / 8 / 9 / 10 / 11 / 12 / 13 / 14 / 15 / 16 / 17 / 18 / 19 / 20 / 21 / 22 / 23 / 24 / 25 / 26 / 27 / 28 / 29 / 30 / 31 / 32 / 33 / 34 / 35 / 36 / 37 / 38 / 39 / 40 |
beetle_psx_initial_scanline_pal |
0 / 1 / 2 / 3 / 4 / 5 / 6 / 7 / 8 / 9 / 10 / 11 / 12 / 13 / 14 / 15 / 16 / 17 / 18 / 19 / 20 / 21 / 22 / 23 / 24 / 25 / 26 / 27 / 28 / 29 / 30 / 31 / 32 / 33 / 34 / 35 / 36 / 37 / 38 / 39 / 40 |
Last Scan Line - PAL | 230 / 231 / 232 / 233 / 234 / 235 / 236 / 237 / 238 / 239 / 240 / 241 / 242 / 243 / 244 / 245 / 246 / 247 / 248 / 249 / 250 / 251 / 252 / 253 / 254 / 255 / 256 / 257 / 258 / 259 / 260 / 261 / 262 / 263 / 264 / 265 / 266 / 267 / 268 / 269 / 270 / 271 / 272 / 273 / 274 / 275 / 276 / 277 / 278 / 279 / 280 / 281 / 282 / 283 / 284 / 285 / 286 / 287 ✅ |
beetle_psx_last_scanline_pal |
230 / 231 / 232 / 233 / 234 / 235 / 236 / 237 / 238 / 239 / 240 / 241 / 242 / 243 / 244 / 245 / 246 / 247 / 248 / 249 / 250 / 251 / 252 / 253 / 254 / 255 / 256 / 257 / 258 / 259 / 260 / 261 / 262 / 263 / 264 / 265 / 266 / 267 / 268 / 269 / 270 / 271 / 272 / 273 / 274 / 275 / 276 / 277 / 278 / 279 / 280 / 281 / 282 / 283 / 284 / 285 / 286 / 287 |
CD Access Method (Restart Required) | Synchronous ✅ / Asynchronous / Pre-Cache |
beetle_psx_cd_access_method |
sync / async / precache |
CD Loading Speed | 2x (Native) ✅ / 4x / 6x / 8x / 10x / 12x / 14x |
beetle_psx_cd_fastload |
2x(native) / 4x / 6x / 8x / 10x / 12x / 14x |