Commit Graph

400 Commits

Author SHA1 Message Date
Logan McNaughton
a5ddea353a
print sdl errors (#478) 2025-07-09 10:19:44 +02:00
Logan McNaughton
6d85358f2b
re-order destruction of UI elements (#471)
* re-order destruction of UI elements

* more
2025-07-05 21:25:41 +02:00
Logan McNaughton
e4b7e291dd
update socket2 (#469) 2025-07-05 17:52:29 +02:00
Logan McNaughton
16732d3d3c
use is_multiple_of (#468) 2025-07-05 09:31:03 +02:00
Logan McNaughton
5857da0404 add cheats enabled var 2025-07-05 09:25:31 +02:00
Logan McNaughton
7b400a0edc
Update cheats (#467) 2025-07-04 22:13:52 +02:00
Logan McNaughton
8f6c6f1b94
Cheat support (#459)
* Cheat support

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more
2025-07-04 16:46:03 +02:00
Logan McNaughton
7fd43886de add a few vru phrases 2025-07-03 13:27:33 +02:00
Logan McNaughton
572807def0 add missing disable_expansion_pak in netplay features 2025-07-02 22:26:01 +02:00
Logan McNaughton
10a1e3a556 rename netplaydialog 2025-07-02 22:22:42 +02:00
Logan McNaughton
72456b48e5 some code cleanup 2025-07-02 22:15:15 +02:00
Logan McNaughton
6ecb81fda1 move netplay_window to netplay.rs 2025-07-02 22:08:46 +02:00
Logan McNaughton
31b4e7944b
non-empty default value for ram (#465) 2025-07-02 14:33:19 +02:00
Logan McNaughton
dc1535ea04
better RAM access checks (#464)
* better RAM access checks

* more
2025-07-02 14:25:03 +02:00
Logan McNaughton
7a59714417
Make expansion pak optional (#463)
* Make expansion pak optional

* more
2025-07-02 09:59:01 +02:00
Logan McNaughton
ead561933b
Don't adjust variable limit after toggle (#458)
* Don't adjust variable limit after toggle

* more
2025-06-30 10:55:34 +02:00
Logan McNaughton
25aaa985f1
netplay feedback button (#454) 2025-06-28 16:50:59 +02:00
Logan McNaughton
11830b0222
add button for netplay discord (#452) 2025-06-28 14:19:50 +02:00
Logan McNaughton
3183a5eb0b
add some more about buttons (#451) 2025-06-28 10:43:09 +02:00
Logan McNaughton
5d8ac37a0f
Add new version button to main screen (#450) 2025-06-27 13:09:22 +02:00
Logan McNaughton
f389be0773
Fix netplay server url (#449) 2025-06-26 21:04:54 +02:00
Logan McNaughton
3da98c58c5
use rust 1.88 (#447)
* Use Rust 1.88

* add win aarch64 (commented out)

* Clippy fixes
2025-06-26 20:36:10 +02:00
Logan McNaughton
6e9b8ae126
Don't enable VRU during netplay (#445) 2025-06-26 11:44:56 +02:00
Logan McNaughton
ada6936b9a print message when creating/loading savestate 2025-06-26 09:50:22 +02:00
Logan McNaughton
0bb3d2cd5d
Slint fixes (#433)
* Slint fixes

* more

* more

* more

* more

* more

* more

* more

* more

* more
2025-06-26 09:00:23 +02:00
Logan McNaughton
f213b0b9a9
Use Slint for GUI (#432)
* Use Slint for GUI

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more
2025-06-25 12:38:33 +02:00
Logan McNaughton
69029f3a02
Don't panic on invalid transferpak access (#430) 2025-06-23 16:41:37 +02:00
Logan McNaughton
f3e819158a fix formatting 2025-06-12 18:41:44 +02:00
Logan McNaughton
e83bcbb4ce remove session reference for netplay 2025-06-12 18:39:31 +02:00
Logan McNaughton
eb5d255fd7 move get_controller_names 2025-06-12 13:34:59 +02:00
Logan McNaughton
c25a56df50
Fix netplay crash when server is down (#417)
* Fix netplay crash when server is down

* more
2025-06-05 12:16:11 +02:00
Logan McNaughton
5b6f9b76a6 fix interlaced image (#383) 2025-04-15 23:23:47 +02:00
Logan McNaughton
383b568012
remove framebuffer tracking (#381)
* remove framebuffer tracking

* more
2025-04-15 11:08:40 +02:00
Logan McNaughton
27bb66df4c
Cleanup some controller code (#378)
* controller hotplugging

* more

* more
2025-04-13 21:07:54 +02:00
Logan McNaughton
68f90e1cd7
update 7z package (#370) 2025-04-05 09:30:12 +02:00
Logan McNaughton
11a8e96564 better default for address tracking 2025-04-02 14:06:43 +02:00
Logan McNaughton
f35869190b
gather controller input even without focus (#360) 2025-03-27 08:55:52 +01:00
Logan McNaughton
83103130e7 cleanup 2025-03-25 12:59:32 +01:00
Logan McNaughton
6355885a56
let server determine netplay buffer target (#356) 2025-03-24 15:03:50 +01:00
Logan McNaughton
fd6965ff3b
remove rusttype (#355)
* remove rusttype

* more
2025-03-24 11:06:17 +01:00
Logan McNaughton
2fcf202a5c move variable into function 2025-03-23 22:07:32 +01:00
Logan McNaughton
8a09cb711f
Add RDP to savestate (#348)
* organize RDP device

* more

* more

* more

* more

* more

* more

* more

* more
2025-03-22 21:24:39 +01:00
Logan McNaughton
a58eed7dc9
add a few more loops (#347)
* add a few more loops

* more
2025-03-22 08:23:48 +01:00
Logan McNaughton
09ba7e4d13
use loop for cache (#346) 2025-03-21 22:37:04 +01:00
Logan McNaughton
1aa00de1b2
fix crash when attempting to read zip without rom (#345)
* fix crash when attempting to read zip without rom

* more
2025-03-19 18:37:35 +01:00
Logan McNaughton
f71ec9d54a
add cic entry for libdragon ipl3 (#344) 2025-03-19 14:15:00 +01:00
Logan McNaughton
dbab58f4a7
catch possible error in loading save state (#335) 2025-03-16 17:10:16 +01:00
Logan McNaughton
f6b0b59bbc fix savestate default memory 2025-03-16 10:32:32 +01:00
Logan McNaughton
a182fbb1f9 cleanup function 2025-03-16 10:11:50 +01:00
Logan McNaughton
da9b2247f8
remove more mut (#334) 2025-03-16 10:10:16 +01:00
Logan McNaughton
1bcadb3a8b
remove un-needed mut (#333)
* remove un-needed mut

* more

* more
2025-03-16 09:48:32 +01:00
Logan McNaughton
b07dde8768
disable mempak for Chameleon Twist (#332) 2025-03-16 07:35:37 +01:00
Logan McNaughton
cba7bc7477 ensure gain setting persists 2025-03-16 07:18:05 +01:00
Logan McNaughton
ea6f203e33
allow up to 200% audio volume (#331) 2025-03-15 20:21:46 +01:00
Logan McNaughton
e48ad9bdff
add way to change audio volume (#330)
* add way to change audio volume

* more
2025-03-15 11:11:18 +01:00
Logan McNaughton
6e10bee216
use glow for egui (#321)
* Revert "use GL backend for GUI to avoid conflicts with game window (#287)"

This reverts commit 00964f06f0.

* use glow
2025-03-11 09:43:09 +01:00
Logan McNaughton
e93c275795
Add option for CRT shader (#314)
* add CRT shader

* more

* more

* update type

* more

* more

* more

* more
2025-03-10 16:52:25 +01:00
Logan McNaughton
67a8bb5e4c
show VRU dialog in main window (#311) 2025-03-09 22:20:16 +01:00
Logan McNaughton
2828accee1
re-arrange UI struct (#310)
* re-arrange UI struct

* format
2025-03-09 10:30:43 +01:00
Logan McNaughton
16a9754bda
GB MBC1 support (#309) 2025-03-08 21:48:51 +01:00
Logan McNaughton
e73816541e
condense code (#308) 2025-03-07 18:35:48 +01:00
Logan McNaughton
f6b2342e0e
always make the window resizeable (#305) 2025-03-07 10:43:35 +01:00
Logan McNaughton
a07237aa64
set netplay buffer target (#300) 2025-03-04 21:23:33 +01:00
Logan McNaughton
fdc17f4ae5
make is viewer optional (#299)
* make is viewer optional

* more
2025-03-04 18:52:47 +01:00
Logan McNaughton
4802f3b71a remove pub 2025-03-04 12:03:30 +01:00
Logan McNaughton
a4c505c72d
remove some code duplication (#298) 2025-03-04 10:12:56 +01:00
Logan McNaughton
30cb3f8339
add some randomness (#297) 2025-03-04 09:45:25 +01:00
Logan McNaughton
da1e686c1a
Add option for overclocking (#293)
* add option to overclock CPU

* netplay

* more

* more

* more

* more

* more
2025-02-28 21:34:33 +01:00
Logan McNaughton
7b51ca82eb
add widescreen stretch option (#291) 2025-02-27 22:05:19 +01:00
Logan McNaughton
eb9f37f1f5
add button to open save folder (#289) 2025-02-27 11:29:30 +01:00
Logan McNaughton
37b902eb31
use deterministic rtc time (#288)
* use deterministic rtc time

* netplay
2025-02-27 10:59:44 +01:00
Logan McNaughton
00964f06f0
use GL backend for GUI to avoid conflicts with game window (#287) 2025-02-27 10:04:53 +01:00
Logan McNaughton
319d7c8553
some mbc3 rtc code (#284) 2025-02-26 21:00:15 +01:00
Logan McNaughton
82b4adb4ad
flash cart menu support (#283)
* flash cart menu support

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more
2025-02-26 10:04:44 +01:00
Logan McNaughton
8fbc63a677
add links to wiki and discord (#282) 2025-02-24 18:50:29 +01:00
Logan McNaughton
48ee50dea3
fix Stadium 2 GB games (#281) 2025-02-24 15:31:19 +01:00
Logan McNaughton
34a09925b4
fix GB tower (#280) 2025-02-24 14:43:06 +01:00
Logan McNaughton
168347b46e
Transfer Pak UI (#279)
* Transfer Pak UI

* more

* more

* more

* more
2025-02-24 12:49:33 +01:00
Logan McNaughton
95a3d3d5ec fix type 2025-02-23 22:28:07 +01:00
Logan McNaughton
f6349f13da
tpak cleanup (#278)
* tpak cleanup

* more

* more
2025-02-23 16:10:53 +01:00
Logan McNaughton
fb2cf7fcb9
move UI elements around (#277) 2025-02-23 13:25:23 +01:00
Logan McNaughton
9980302d37
more tpak code (#276)
* more tpak code

* more
2025-02-23 13:10:50 +01:00
Logan McNaughton
4692e2bcb9
more tpak code (#275)
* more tpak code

* more
2025-02-23 11:59:15 +01:00
Logan McNaughton
04390301c9
more tpak code (#274) 2025-02-22 21:41:21 +01:00
Logan McNaughton
bc415821d6
check for new version (#273)
* check for new version

* more
2025-02-21 23:02:16 +01:00
Logan McNaughton
b7509a2425
use rust 2024 edition (#268) 2025-02-20 18:20:55 +01:00
Logan McNaughton
09dfd69283
use better data struct for netplay servers (#269)
* use better data struct for netplay servers

* more
2025-02-20 12:46:44 +01:00
Logan McNaughton
d262567084
use struct in netplay code (#265)
* use struct in netplay code

* more
2025-02-19 20:57:03 +01:00
Logan McNaughton
c363e78fbb
add slider for resolution (#264)
* add slider for resolution

* more
2025-02-19 14:48:36 +01:00
Logan McNaughton
b01c2d1885 use key down for input 2025-02-18 14:25:24 +01:00
Logan McNaughton
938a99caa9
clean up data struct (#262)
* clean up data struct

* add check

* more

* more

* more
2025-02-18 10:05:48 +01:00
Logan McNaughton
656e390171
track RDP RDRAM writes (#259)
* track RDP RDRAM writes

* more

* more

* more

* more

* more
2025-02-17 22:13:45 +01:00
Logan McNaughton
17990dfebc
toggle speed limiter (#260) 2025-02-17 13:40:25 +01:00
Logan McNaughton
671a961789
Use struct instead of tuple (#258)
* Use struct instead of tuple

* more
2025-02-17 09:19:25 +01:00
Logan McNaughton
dc5a78a75e
use audio for netplay messages (#256)
* use audio for netplay messages

* more
2025-02-16 11:04:59 +01:00
Logan McNaughton
c2780c78b3
Transferpak stub (#254)
* transferpak support

* more

* more
2025-02-15 18:32:36 +01:00
Logan McNaughton
e04a151d49
set DPC_PIPEBUSY_REG (#253)
* set DPC_PIPEBUSY_REG

* revert hidden rdram change

* more
2025-02-15 08:29:37 +01:00
Logan McNaughton
8566eee906 fix possible crash in is viewer 2025-02-14 22:20:15 +01:00
Logan McNaughton
b7d194e12d
alt_return to toggle fullscreen (#252)
* alt_return to toggle fullscreen

* more
2025-02-14 12:29:49 +01:00
Logan McNaughton
df9ad377d3
add cycles for rsp mfc0 (#251)
* add cycles for rsp mfc0

* more
2025-02-14 10:07:58 +01:00
Logan McNaughton
8f20abe813
update_screen after speed limiter (#250) 2025-02-13 22:09:17 +01:00
Logan McNaughton
500b4bb505
only try to assign enabled controllers (#248) 2025-02-13 21:05:22 +01:00
Logan McNaughton
74c65750a3
add some sdl window flags (#247) 2025-02-13 11:40:06 +01:00
Logan McNaughton
2d09425ca1
fix rsp reserved commands (#246) 2025-02-12 22:04:30 +01:00
Logan McNaughton
d0965c03e1
dynamically calculate speed limit frequency (#245)
* dynamically calculate speed limit frequency

* dynamically calculate speed limit frequency

* dynamically calculate speed limit frequency

* more
2025-02-12 21:18:54 +01:00
Logan McNaughton
6ee55ce4ca
add a way to show internal FPS (#244) 2025-02-12 17:53:17 +01:00
Logan McNaughton
63b2ed69e4
don't modify cart.rom (#243)
* don't modify cart.rom

* don't modify cart.rom

* don't modify cart.rom

* more

* more
2025-02-12 16:09:42 +01:00
Logan McNaughton
0faf33fcfa
PAL aspect ratio adjustment (#242) 2025-02-12 10:14:06 +01:00
Logan McNaughton
b67268ff62
fix PAL aspect ratio (#241) 2025-02-12 09:19:39 +01:00
Logan McNaughton
2289971987
Savestate support (#236)
* add save state support

* bind to f5

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more

* more

* arm

* arm

* arm

* arm

* arm

* more

* more

* more

* more

* more

* more
2025-02-11 15:22:35 +01:00
Logan McNaughton
7f6de5119f
use git hash for netplay sync (#234)
* use git hash for netplay sync

* more
2025-02-10 17:02:09 +01:00
Logan McNaughton
1c168c4bcd
add some CPU read cycles (#233)
* add some CPU read cycles

* more

* more

* more

* use scissor region for rdp interrupt calc
2025-02-09 17:34:29 +01:00
Logan McNaughton
ab5ef57106 further function cleanup 2025-02-09 11:43:10 +01:00
Logan McNaughton
4c50203ad3
modify rdp sync code (#230) 2025-02-08 21:39:48 +01:00
Logan McNaughton
271e4be68c
disable rdp sync optimization to be safe (#229) 2025-02-08 21:20:59 +01:00
Logan McNaughton
a9afd6bb5c
Improve RDP emulation performance (#228)
* Improve RDP emulation performance

* more

* more

* more

* more
2025-02-07 22:29:20 +01:00
Logan McNaughton
58eaad1742
remove some dependencies (#226)
* remove some dependencies

* more

* more

* more

* more
2025-02-05 19:31:38 +01:00
Logan McNaughton
f4099cfcce
further sc64 cleanup (#224)
* further sc64 cleanup

* further sc64 cleanup
2025-02-05 13:39:24 +01:00
Logan McNaughton
5b3e2a25de
Fix out-of-bounds ROM dma (#223)
* Fix out-of-bounds ROM dma

* Fix out-of-bounds ROM dma

* more
2025-02-05 13:18:44 +01:00
Logan McNaughton
55ab1cb60b
Fix address masking in sc64 read/write (#222)
* fix address masking for sc64

* more

* more
2025-02-05 10:29:07 +01:00
Logan McNaughton
96d2a72850
compress sd and rom saves during netplay (#220)
* compress sd and rom saves during netplay

* compress sd and rom saves during netplay
2025-02-04 21:21:47 +01:00
Logan McNaughton
4c7361f963
No need to check for ROM bounds on write (#219)
* resize ROM when writing if needed

* more
2025-02-04 19:50:19 +01:00
Logan McNaughton
80fc5f8ea2 collapse variable 2025-02-04 15:42:29 +01:00
Logan McNaughton
f0eb5764c8
emulate summercart64 ROM_WRITE_ENABLE flag (#218)
* emulate summercart64 ROM_WRITE_ENABLE flag

* clean up names
2025-02-04 15:37:55 +01:00
Logan McNaughton
480af8d36e
Ignore summercart64 USB commands (#217) 2025-02-04 13:14:57 +01:00
Logan McNaughton
ad4eddb408
Fix crash when game name cannot be parsed (#216) 2025-02-04 13:01:33 +01:00
Logan McNaughton
920a0323c0 cleanup 2025-02-03 16:49:42 +01:00
Logan McNaughton
14e45be300
SD card emulation (#214)
* SD card emulation

* more

* more

* more

* more

* more

* more

* more

* better save name

* better save name

* better save name

* more
2025-02-03 16:41:46 +01:00
Logan McNaughton
fba6a4a6d4
support for Advanced Homebrew ROM Header (#213)
* support for Advanced Homebrew ROM Header

* more

* more
2025-02-03 10:22:21 +01:00
Logan McNaughton
a7c2c26d78
minor tweak to interrupt system (#211) 2025-02-02 11:23:32 +01:00
Logan McNaughton
7d63a694cc
fix compare interrupt (#210) 2025-02-01 20:47:26 +01:00
Logan McNaughton
5c98a08fe4
remove schedule_rcp_interrupt (#208)
* remove schedule_rcp_interrupt

* more

* more

* more
2025-02-01 19:16:38 +01:00
Logan McNaughton
fe5346235e
fix freeze in JFG (#204)
* fix freeze in JFG

* more
2025-01-30 19:32:56 +01:00
Logan McNaughton
f84444a12e
remove rdp_full_sync (#203)
* remove rdp_full_sync

* swap

* swap
2025-01-30 14:42:04 +01:00
Logan McNaughton
cb9309d7e4
RDP sync updates (#201)
* RDP sync updates

* rename

* rename
2025-01-29 20:21:49 +01:00
Logan McNaughton
1b1313003c
dont run rsp task when dma is busy (#200) 2025-01-29 12:50:29 +01:00
Logan McNaughton
7219a4445c
add another sync point for RSP (#199) 2025-01-29 11:14:50 +01:00
Logan McNaughton
687badc142
Modify RSP sync points (#198)
* modify RSP sync points

* more

* more

* more

* more

* more

* more

* more
2025-01-29 10:49:29 +01:00
Logan McNaughton
27922fbf9c
use TCP_RECEIVE_SAVE_WITH_SIZE for netplay (#193)
* use TCP_RECEIVE_SAVE_WITH_SIZE for netplay

* more

* more

* more
2025-01-28 13:30:59 +01:00
Logan McNaughton
71b7baf613
fix masking pi regs (#192) 2025-01-27 22:50:49 +01:00
Logan McNaughton
f4714a7813
add rdram reg that libdragon seems to access (#191)
* add rdram reg that libdragon seems to access

* more
2025-01-27 19:42:36 +01:00
Logan McNaughton
6f33934180
on mac, run game in new process (#189)
* on mac, run game in new process

* more

* more

* more

* remove tokio

* clippy

* formatting

* more

* more

* more

* more

* more

* more

* more

* more

* more
2025-01-27 18:02:06 +01:00
Logan McNaughton
cbc9045ad4 print error message when sdl fails 2025-01-27 12:02:42 +01:00
Logan McNaughton
3dc28cc603
Don't create UI in same thread as egui (#187) 2025-01-27 07:36:53 +01:00
Logan McNaughton
a2ba5baaa8
move sse2neon to versioned folder (#185)
* move sse2neon to versioned folder

* more
2025-01-26 19:13:19 +01:00
Logan McNaughton
333865e7de
dont create new UI on close (#184)
* dont create new UI on close

* dont create new UI on close

* more

* more

* more

* more

* more
2025-01-26 17:47:17 +01:00
Logan McNaughton
b1bb96c7d2
use binary format for rom saves (#183)
* use binary format for rom saves

* more
2025-01-26 15:00:49 +01:00
Logan McNaughton
9e88343c6b
check accept value of netplay begin_game message (#182) 2025-01-26 12:26:24 +01:00
Logan McNaughton
75e59ee051
cleanup dir detection (#181)
* cleanup dir detection

* more

* more
2025-01-26 11:27:33 +01:00
Logan McNaughton
6820da889c
add icon for windows (#179) 2025-01-25 19:00:38 +01:00