From 4d2d4064b269fa9f59ffa89fe41b5b4a28564bd0 Mon Sep 17 00:00:00 2001 From: Ian Chamberlain Date: Mon, 28 Nov 2022 23:03:15 -0700 Subject: [PATCH] Rework a bunch of stuff in citra dockerfile --- .gitignore | 3 - README.md | 16 +- citra/qt-config.ini | 496 --------------------------------- docker-compose.yml | 26 -- docker/citra.dockerfile | 37 ++- docker/citra/download_citra.sh | 15 + docker/citra/sdl2-config.ini | 342 +++++++++++++++++++++++ docker/driver.dockerfile | 10 - driver/citra-controls.png | Bin 117457 -> 0 bytes driver/citra-hotkeys.png | Bin 90327 -> 0 bytes driver/main.vdo | 16 -- driver/vncdo.sh | 8 - run.sh | 20 -- test-crate/.gitignore | 1 + test-crate/Cargo.lock | 119 ++++++++ test-crate/Cargo.toml | 9 + test-crate/src/main.rs | 53 ++++ 17 files changed, 576 insertions(+), 595 deletions(-) delete mode 100644 citra/qt-config.ini delete mode 100644 docker-compose.yml create mode 100755 docker/citra/download_citra.sh create mode 100644 docker/citra/sdl2-config.ini delete mode 100644 docker/driver.dockerfile delete mode 100644 driver/citra-controls.png delete mode 100644 driver/citra-hotkeys.png delete mode 100644 driver/main.vdo delete mode 100755 driver/vncdo.sh delete mode 100755 run.sh create mode 100644 test-crate/.gitignore create mode 100644 test-crate/Cargo.lock create mode 100644 test-crate/Cargo.toml create mode 100644 test-crate/src/main.rs diff --git a/.gitignore b/.gitignore index 2a6b1e1..e69de29 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +0,0 @@ -# Ignore files generated by citra or the VNC client -citra/out -driver/out diff --git a/README.md b/README.md index 1901e4b..d987acc 100644 --- a/README.md +++ b/README.md @@ -19,7 +19,19 @@ A set of tools for running automated Rust tests against Citra (3DS emulator). 1. Build a test executable (type tbd) 1. `citra-emu` container: bind-mount test executable and choose it 1. `driver` container perform input / output as needed for test, via VNC - * possible extension: `3dslink -s` to get actual stdout/stderr (return code?) - * acceptance testing of images, hopefully via screenshot + +## To do work + +* [ ] Reorganize docker build files vs runtime files a bit +* [ ] Make this repo useable as a github action +* [ ] Run itself as part of CI? I guess? +* [ ] Simpler user-run workflow: + * Ideally, a single command to spin everything up, build + load a 3dsx and run a vdo script. + * Maybe cargo args passed in as environment variable or something? +* [ ] Clearly defined dependencies + use cases: + * Should this be usable without Rust? + * Is docker the only real dependency? + * Does this need a separate binary, or can we just use native cargo test + capabilities? diff --git a/citra/qt-config.ini b/citra/qt-config.ini deleted file mode 100644 index 1ad0544..0000000 --- a/citra/qt-config.ini +++ /dev/null @@ -1,496 +0,0 @@ -[Audio] -enable_audio_stretching=true -enable_audio_stretching\default=true -enable_dsp_lle=false -enable_dsp_lle\default=true -enable_dsp_lle_multithread=false -enable_dsp_lle_multithread\default=true -mic_input_device=Default -mic_input_device\default=true -mic_input_type=0 -mic_input_type\default=true -output_device=auto -output_device\default=true -output_engine=auto -output_engine\default=true -volume=@Variant(\0\0\0\x87?\x80\0\0) -volume\default=true - -[Camera] -camera_inner_config= -camera_inner_config\default=true -camera_inner_flip=0 -camera_inner_flip\default=true -camera_inner_name=blank -camera_inner_name\default=true -camera_outer_left_config= -camera_outer_left_config\default=true -camera_outer_left_flip=0 -camera_outer_left_flip\default=true -camera_outer_left_name=blank -camera_outer_left_name\default=true -camera_outer_right_config= -camera_outer_right_config\default=true -camera_outer_right_flip=0 -camera_outer_right_flip\default=true -camera_outer_right_name=blank -camera_outer_right_name\default=true - -[Controls] -profile=0 -profile\default=true -profiles\1\button_a="code:65,engine:keyboard" -profiles\1\button_a\default=true -profiles\1\button_b="code:83,engine:keyboard" -profiles\1\button_b\default=true -profiles\1\button_debug="code:79,engine:keyboard" -profiles\1\button_debug\default=true -profiles\1\button_down="code:71,engine:keyboard" -profiles\1\button_down\default=true -profiles\1\button_gpio14="code:80,engine:keyboard" -profiles\1\button_gpio14\default=true -profiles\1\button_home="code:66,engine:keyboard" -profiles\1\button_home\default=true -profiles\1\button_l="code:81,engine:keyboard" -profiles\1\button_l\default=true -profiles\1\button_left="code:70,engine:keyboard" -profiles\1\button_left\default=true -profiles\1\button_r="code:87,engine:keyboard" -profiles\1\button_r\default=true -profiles\1\button_right="code:72,engine:keyboard" -profiles\1\button_right\default=true -profiles\1\button_select="code:78,engine:keyboard" -profiles\1\button_select\default=true -profiles\1\button_start="code:77,engine:keyboard" -profiles\1\button_start\default=true -profiles\1\button_up="code:84,engine:keyboard" -profiles\1\button_up\default=true -profiles\1\button_x="code:90,engine:keyboard" -profiles\1\button_x\default=true -profiles\1\button_y="code:88,engine:keyboard" -profiles\1\button_y\default=true -profiles\1\button_zl="code:49,engine:keyboard" -profiles\1\button_zl\default=true -profiles\1\button_zr="code:50,engine:keyboard" -profiles\1\button_zr\default=true -profiles\1\c_stick="down:code$075$1engine$0keyboard,engine:analog_from_button,left:code$074$1engine$0keyboard,modifier:code$068$1engine$0keyboard,modifier_scale:0.500000,right:code$076$1engine$0keyboard,up:code$073$1engine$0keyboard" -profiles\1\c_stick\default=true -profiles\1\circle_pad="down:code$016777237$1engine$0keyboard,engine:analog_from_button,left:code$016777234$1engine$0keyboard,modifier:code$068$1engine$0keyboard,modifier_scale:0.500000,right:code$016777236$1engine$0keyboard,up:code$016777235$1engine$0keyboard" -profiles\1\circle_pad\default=true -profiles\1\motion_device="engine:motion_emu,update_period:100,sensitivity:0.01,tilt_clamp:90.0" -profiles\1\motion_device\default=true -profiles\1\name=default -profiles\1\name\default=true -profiles\1\touch_device=engine:emu_window -profiles\1\touch_device\default=true -profiles\1\touch_from_button_map=0 -profiles\1\touch_from_button_map\default=true -profiles\1\udp_input_address=127.0.0.1 -profiles\1\udp_input_address\default=true -profiles\1\udp_input_port=26760 -profiles\1\udp_input_port\default=true -profiles\1\udp_pad_index=0 -profiles\1\udp_pad_index\default=true -profiles\1\use_touch_from_button=false -profiles\1\use_touch_from_button\default=true -profiles\size=1 -touch_from_button_maps\1\entries\size=0 -touch_from_button_maps\1\name=default -touch_from_button_maps\1\name\default=true -touch_from_button_maps\size=1 - -[Core] -cpu_clock_percentage=100 -cpu_clock_percentage\default=true -use_cpu_jit=true -use_cpu_jit\default=true - -[Data%20Storage] -nand_directory=/root/.local/share/citra-emu/nand/ -nand_directory\default=true -sdmc_directory=/root/.local/share/citra-emu/sdmc/ -sdmc_directory\default=true -use_virtual_sd=true -use_virtual_sd\default=true - -[Debugging] -LLE\AC=false -LLE\AC\default=true -LLE\ACT=false -LLE\ACT\default=true -LLE\AM=false -LLE\AM\default=true -LLE\BOSS=false -LLE\BOSS\default=true -LLE\CAM=false -LLE\CAM\default=true -LLE\CDC=false -LLE\CDC\default=true -LLE\CECD=false -LLE\CECD\default=true -LLE\CFG=false -LLE\CFG\default=true -LLE\CSND=false -LLE\CSND\default=true -LLE\DLP=false -LLE\DLP\default=true -LLE\DSP=false -LLE\DSP\default=true -LLE\ERR=false -LLE\ERR\default=true -LLE\FRD=false -LLE\FRD\default=true -LLE\FS=false -LLE\FS\default=true -LLE\GPIO=false -LLE\GPIO\default=true -LLE\GSP=false -LLE\GSP\default=true -LLE\HID=false -LLE\HID\default=true -LLE\HTTP=false -LLE\HTTP\default=true -LLE\I2C=false -LLE\I2C\default=true -LLE\IR=false -LLE\IR\default=true -LLE\LDR=false -LLE\LDR\default=true -LLE\MCU=false -LLE\MCU\default=true -LLE\MIC=false -LLE\MIC\default=true -LLE\MP=false -LLE\MP\default=true -LLE\MVD=false -LLE\MVD\default=true -LLE\NDM=false -LLE\NDM\default=true -LLE\NEWS=false -LLE\NEWS\default=true -LLE\NFC=false -LLE\NFC\default=true -LLE\NIM=false -LLE\NIM\default=true -LLE\NS=false -LLE\NS\default=true -LLE\NWM=false -LLE\NWM\default=true -LLE\PDN=false -LLE\PDN\default=true -LLE\PM=false -LLE\PM\default=true -LLE\PS=false -LLE\PS\default=true -LLE\PTM=false -LLE\PTM\default=true -LLE\PXI=false -LLE\PXI\default=true -LLE\QTM=false -LLE\QTM\default=true -LLE\SOC=false -LLE\SOC\default=true -LLE\SPI=false -LLE\SPI\default=true -LLE\SSL=false -LLE\SSL\default=true -gdbstub_port=24689 -gdbstub_port\default=true -record_frame_times=false -use_gdbstub=false -use_gdbstub\default=true - -[Layout] -custom_bottom_bottom=480 -custom_bottom_bottom\default=true -custom_bottom_left=40 -custom_bottom_left\default=true -custom_bottom_right=360 -custom_bottom_right\default=true -custom_bottom_top=240 -custom_bottom_top\default=true -custom_layout=false -custom_layout\default=true -custom_top_bottom=240 -custom_top_bottom\default=true -custom_top_left=0 -custom_top_left\default=true -custom_top_right=400 -custom_top_right\default=true -custom_top_top=0 -custom_top_top\default=true -factor_3d=0 -factor_3d\default=true -filter_mode=true -filter_mode\default=true -layout_option=0 -pp_shader_name=none (builtin) -pp_shader_name\default=true -render_3d=0 -render_3d\default=true -swap_screen=false -swap_screen\default=true -upright_screen=false -upright_screen\default=true - -[Miscellaneous] -log_filter=*:Info -log_filter\default=true - -[Renderer] -bg_blue=0.545098066329956 -bg_blue\default=false -bg_green=0.545098066329956 -bg_green\default=false -bg_red=0.545098066329956 -bg_red\default=false -frame_limit=100 -frame_limit\default=true -frame_limit_alternate=200 -frame_limit_alternate\default=true -resolution_factor=1 -resolution_factor\default=true -shaders_accurate_mul=true -shaders_accurate_mul\default=true -texture_filter_name=none -texture_filter_name\default=true -use_disk_shader_cache=true -use_disk_shader_cache\default=true -use_frame_limit_alternate=false -use_frame_limit_alternate\default=true -use_hw_renderer=true -use_hw_renderer\default=true -use_hw_shader=true -use_hw_shader\default=true -use_shader_jit=true -use_shader_jit\default=true -use_vsync_new=true -use_vsync_new\default=true - -[System] -init_clock=0 -init_clock\default=true -init_time=946681277 -init_time\default=true -is_new_3ds=true -is_new_3ds\default=true -region_value=-1 -region_value\default=true - -[UI] -GameList\hideNoIcon=false -GameList\hideNoIcon\default=true -GameList\iconSize=2 -GameList\iconSize\default=true -GameList\row1=2 -GameList\row1\default=true -GameList\row2=0 -GameList\row2\default=true -GameList\singleLineMode=false -GameList\singleLineMode\default=true -Multiplayer\game_id=0 -Multiplayer\game_id\default=true -Multiplayer\host_type=0 -Multiplayer\host_type\default=true -Multiplayer\ip= -Multiplayer\ip\default=true -Multiplayer\ip_ban_list\size=0 -Multiplayer\max_player=8 -Multiplayer\max_player\default=true -Multiplayer\nickname= -Multiplayer\nickname\default=true -Multiplayer\port=24872 -Multiplayer\port\default=true -Multiplayer\room_description= -Multiplayer\room_description\default=true -Multiplayer\room_name= -Multiplayer\room_name\default=true -Multiplayer\room_nickname= -Multiplayer\room_nickname\default=true -Multiplayer\room_port=24872 -Multiplayer\room_port\default=true -Multiplayer\username_ban_list\size=0 -Paths\gamedirs\1\deep_scan=false -Paths\gamedirs\1\deep_scan\default=true -Paths\gamedirs\1\expanded=true -Paths\gamedirs\1\expanded\default=true -Paths\gamedirs\1\path=INSTALLED -Paths\gamedirs\2\deep_scan=false -Paths\gamedirs\2\deep_scan\default=true -Paths\gamedirs\2\expanded=true -Paths\gamedirs\2\expanded\default=true -Paths\gamedirs\2\path=SYSTEM -Paths\gamedirs\size=2 -Paths\language=en -Paths\language\default=false -Paths\moviePlaybackPath= -Paths\movieRecordPath= -Paths\recentFiles=@Invalid() -Paths\romsPath= -Paths\screenshotPath= -Paths\symbolsPath= -Paths\videoDumpingPath= -Shortcuts\Main%20Window\Advance%20Frame\Context=2 -Shortcuts\Main%20Window\Advance%20Frame\Context\default=true -Shortcuts\Main%20Window\Advance%20Frame\KeySeq=\\ -Shortcuts\Main%20Window\Advance%20Frame\KeySeq\default=true -Shortcuts\Main%20Window\Capture%20Screenshot\Context=2 -Shortcuts\Main%20Window\Capture%20Screenshot\Context\default=true -Shortcuts\Main%20Window\Capture%20Screenshot\KeySeq=Ctrl+P -Shortcuts\Main%20Window\Capture%20Screenshot\KeySeq\default=true -Shortcuts\Main%20Window\Continue\Pause%20Emulation\Context=1 -Shortcuts\Main%20Window\Continue\Pause%20Emulation\Context\default=true -Shortcuts\Main%20Window\Continue\Pause%20Emulation\KeySeq=F4 -Shortcuts\Main%20Window\Continue\Pause%20Emulation\KeySeq\default=true -Shortcuts\Main%20Window\Decrease%20Speed%20Limit\Context=2 -Shortcuts\Main%20Window\Decrease%20Speed%20Limit\Context\default=true -Shortcuts\Main%20Window\Decrease%20Speed%20Limit\KeySeq=- -Shortcuts\Main%20Window\Decrease%20Speed%20Limit\KeySeq\default=true -Shortcuts\Main%20Window\Exit%20Citra\Context=1 -Shortcuts\Main%20Window\Exit%20Citra\Context\default=true -Shortcuts\Main%20Window\Exit%20Citra\KeySeq=Ctrl+Q -Shortcuts\Main%20Window\Exit%20Citra\KeySeq\default=true -Shortcuts\Main%20Window\Exit%20Fullscreen\Context=1 -Shortcuts\Main%20Window\Exit%20Fullscreen\Context\default=true -Shortcuts\Main%20Window\Exit%20Fullscreen\KeySeq=Esc -Shortcuts\Main%20Window\Exit%20Fullscreen\KeySeq\default=true -Shortcuts\Main%20Window\Fullscreen\Context=1 -Shortcuts\Main%20Window\Fullscreen\Context\default=true -Shortcuts\Main%20Window\Fullscreen\KeySeq=F11 -Shortcuts\Main%20Window\Fullscreen\KeySeq\default=true -Shortcuts\Main%20Window\Increase%20Speed%20Limit\Context=2 -Shortcuts\Main%20Window\Increase%20Speed%20Limit\Context\default=true -Shortcuts\Main%20Window\Increase%20Speed%20Limit\KeySeq=+ -Shortcuts\Main%20Window\Increase%20Speed%20Limit\KeySeq\default=true -Shortcuts\Main%20Window\Load%20Amiibo\Context=2 -Shortcuts\Main%20Window\Load%20Amiibo\Context\default=true -Shortcuts\Main%20Window\Load%20Amiibo\KeySeq=F2 -Shortcuts\Main%20Window\Load%20Amiibo\KeySeq\default=true -Shortcuts\Main%20Window\Load%20File\Context=1 -Shortcuts\Main%20Window\Load%20File\Context\default=true -Shortcuts\Main%20Window\Load%20File\KeySeq=Ctrl+O -Shortcuts\Main%20Window\Load%20File\KeySeq\default=true -Shortcuts\Main%20Window\Load%20from%20Newest%20Slot\Context=1 -Shortcuts\Main%20Window\Load%20from%20Newest%20Slot\Context\default=true -Shortcuts\Main%20Window\Load%20from%20Newest%20Slot\KeySeq=Ctrl+V -Shortcuts\Main%20Window\Load%20from%20Newest%20Slot\KeySeq\default=true -Shortcuts\Main%20Window\Remove%20Amiibo\Context=2 -Shortcuts\Main%20Window\Remove%20Amiibo\Context\default=true -Shortcuts\Main%20Window\Remove%20Amiibo\KeySeq=F3 -Shortcuts\Main%20Window\Remove%20Amiibo\KeySeq\default=true -Shortcuts\Main%20Window\Restart%20Emulation\Context=1 -Shortcuts\Main%20Window\Restart%20Emulation\Context\default=true -Shortcuts\Main%20Window\Restart%20Emulation\KeySeq=F6 -Shortcuts\Main%20Window\Restart%20Emulation\KeySeq\default=true -Shortcuts\Main%20Window\Rotate%20Screens%20Upright\Context=1 -Shortcuts\Main%20Window\Rotate%20Screens%20Upright\Context\default=true -Shortcuts\Main%20Window\Rotate%20Screens%20Upright\KeySeq=F8 -Shortcuts\Main%20Window\Rotate%20Screens%20Upright\KeySeq\default=true -Shortcuts\Main%20Window\Save%20to%20Oldest%20Slot\Context=1 -Shortcuts\Main%20Window\Save%20to%20Oldest%20Slot\Context\default=true -Shortcuts\Main%20Window\Save%20to%20Oldest%20Slot\KeySeq=Ctrl+C -Shortcuts\Main%20Window\Save%20to%20Oldest%20Slot\KeySeq\default=true -Shortcuts\Main%20Window\Stop%20Emulation\Context=1 -Shortcuts\Main%20Window\Stop%20Emulation\Context\default=true -Shortcuts\Main%20Window\Stop%20Emulation\KeySeq=F5 -Shortcuts\Main%20Window\Stop%20Emulation\KeySeq\default=true -Shortcuts\Main%20Window\Swap%20Screens\Context=1 -Shortcuts\Main%20Window\Swap%20Screens\Context\default=true -Shortcuts\Main%20Window\Swap%20Screens\KeySeq=F9 -Shortcuts\Main%20Window\Swap%20Screens\KeySeq\default=true -Shortcuts\Main%20Window\Toggle%20Alternate%20Speed\Context=2 -Shortcuts\Main%20Window\Toggle%20Alternate%20Speed\Context\default=true -Shortcuts\Main%20Window\Toggle%20Alternate%20Speed\KeySeq=Ctrl+Z -Shortcuts\Main%20Window\Toggle%20Alternate%20Speed\KeySeq\default=true -Shortcuts\Main%20Window\Toggle%20Filter%20Bar\Context=1 -Shortcuts\Main%20Window\Toggle%20Filter%20Bar\Context\default=true -Shortcuts\Main%20Window\Toggle%20Filter%20Bar\KeySeq=Ctrl+F -Shortcuts\Main%20Window\Toggle%20Filter%20Bar\KeySeq\default=true -Shortcuts\Main%20Window\Toggle%20Frame%20Advancing\Context=2 -Shortcuts\Main%20Window\Toggle%20Frame%20Advancing\Context\default=true -Shortcuts\Main%20Window\Toggle%20Frame%20Advancing\KeySeq=Ctrl+A -Shortcuts\Main%20Window\Toggle%20Frame%20Advancing\KeySeq\default=true -Shortcuts\Main%20Window\Toggle%20Screen%20Layout\Context=1 -Shortcuts\Main%20Window\Toggle%20Screen%20Layout\Context\default=true -Shortcuts\Main%20Window\Toggle%20Screen%20Layout\KeySeq=F10 -Shortcuts\Main%20Window\Toggle%20Screen%20Layout\KeySeq\default=true -Shortcuts\Main%20Window\Toggle%20Status%20Bar\Context=1 -Shortcuts\Main%20Window\Toggle%20Status%20Bar\Context\default=true -Shortcuts\Main%20Window\Toggle%20Status%20Bar\KeySeq=Ctrl+S -Shortcuts\Main%20Window\Toggle%20Status%20Bar\KeySeq\default=true -Shortcuts\Main%20Window\Toggle%20Texture%20Dumping\Context=2 -Shortcuts\Main%20Window\Toggle%20Texture%20Dumping\Context\default=true -Shortcuts\Main%20Window\Toggle%20Texture%20Dumping\KeySeq=Ctrl+D -Shortcuts\Main%20Window\Toggle%20Texture%20Dumping\KeySeq\default=true -UILayout\gameListHeaderState=@ByteArray(\0\0\0\xff\0\0\0\0\0\0\0\x1\0\0\0\x1\0\0\0\x5\x1\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x4\x98\0\0\0\x5\x1\x1\0\x1\0\0\0\0\0\0\0\0\0\0\0\0h\xff\xff\xff\xff\0\0\0\x81\0\0\0\0\0\0\0\x5\0\0\x2\x80\0\0\0\x1\0\0\0\0\0\0\0h\0\0\0\x1\0\0\0\0\0\0\0h\0\0\0\x1\0\0\0\0\0\0\0h\0\0\0\x1\0\0\0\0\0\0\0\xe0\0\0\0\x1\0\0\0\0\0\0\x3\xe8\0\0\0\0h) -UILayout\geometry="@ByteArray(\x1\xd9\xd0\xcb\0\x3\0\0\0\0\0\xe3\0\0\0\x99\0\0\x4r\0\0\x2\x31\0\0\0\xe4\0\0\0\xad\0\0\x4q\0\0\x2,\0\0\0\0\0\0\0\0\x5V\0\0\0\xe4\0\0\0\xad\0\0\x4q\0\0\x2,)" -UILayout\geometryRenderWindow=@ByteArray(\x1\xd9\xd0\xcb\0\x3\0\0\0\0\0\0\0\0\0\x14\0\0\0\x63\0\0\0\x31\0\0\0\0\0\0\0\x14\0\0\0\x63\0\0\0\x31\0\0\0\0\0\0\0\0\x5V\0\0\0\0\0\0\0\x14\0\0\0\x63\0\0\0\x31) -UILayout\microProfileDialogGeometry=@ByteArray(\x1\xd9\xd0\xcb\0\x3\0\0\0\0\0\0\0\0\0\x14\0\0\x3\xe7\0\0\x2k\0\0\0\0\0\0\0\x14\0\0\x3\xe7\0\0\x2k\0\0\0\0\0\0\0\0\x5V\0\0\0\0\0\0\0\x14\0\0\x3\xe7\0\0\x2k) -UILayout\microProfileDialogVisible=false -UILayout\microProfileDialogVisible\default=true -UILayout\state=@ByteArray(\0\0\0\xff\0\0\0\0\xfd\0\0\0\x2\0\0\0\0\0\0\0\0\0\0\0\0\xfc\x2\0\0\0\x1\xfb\0\0\0\x1c\0W\0\x61\0i\0t\0T\0r\0\x65\0\x65\0W\0i\0\x64\0g\0\x65\0t\0\0\0\0\0\xff\xff\xff\xff\0\0\0V\0\xff\xff\xff\0\0\0\x1\0\0\0\0\0\0\0\0\xfc\x2\0\0\0\b\xfb\0\0\0\x18\0\x41\0R\0M\0R\0\x65\0g\0i\0s\0t\0\x65\0r\0s\0\0\0\0\0\xff\xff\xff\xff\0\0\0h\0\xff\xff\xff\xfb\0\0\0 \0G\0r\0\x61\0p\0h\0i\0\x63\0s\0\x44\0\x65\0\x62\0u\0g\0g\0\x65\0r\0\0\0\0\0\xff\xff\xff\xff\0\0\0V\0\xff\xff\xff\xfb\0\0\0\"\0P\0i\0\x63\0\x61\0 \0\x43\0o\0m\0m\0\x61\0n\0\x64\0 \0L\0i\0s\0t\0\0\0\0\0\xff\xff\xff\xff\0\0\0\x8d\0\xff\xff\xff\xfb\0\0\0*\0P\0i\0\x63\0\x61\0\x42\0r\0\x65\0\x61\0k\0P\0o\0i\0n\0t\0s\0W\0i\0\x64\0g\0\x65\0t\0\0\0\0\0\xff\xff\xff\xff\0\0\0\x8d\0\xff\xff\xff\xfb\0\0\0 \0P\0i\0\x63\0\x61\0V\0\x65\0r\0t\0\x65\0x\0S\0h\0\x61\0\x64\0\x65\0r\0\0\0\0\0\xff\xff\xff\xff\0\0\x1\xb8\0\xff\xff\xff\xfb\0\0\0\x12\0\x43\0i\0T\0r\0\x61\0\x63\0i\0n\0g\0\0\0\0\0\xff\xff\xff\xff\0\0\0G\0\xff\xff\xff\xfb\0\0\0.\0L\0L\0\x45\0S\0\x65\0r\0v\0i\0\x63\0\x65\0M\0o\0\x64\0u\0l\0\x65\0s\0W\0i\0\x64\0g\0\x65\0t\0\0\0\0\0\xff\xff\xff\xff\0\0\0V\0\xff\xff\xff\xfb\0\0\0\x16\0I\0P\0\x43\0R\0\x65\0\x63\0o\0r\0\x64\0\x65\0r\0\0\0\0\0\xff\xff\xff\xff\0\0\0\xcb\0\xff\xff\xff\0\0\x3\x8e\0\0\x1J\0\0\0\x4\0\0\0\x4\0\0\0\b\0\0\0\b\xfc\0\0\0\0) -Updater\check_for_update_on_start=true -Updater\check_for_update_on_start\default=true -Updater\update_on_close=false -Updater\update_on_close\default=true -calloutFlags=1 -calloutFlags\default=false -confirmClose=true -confirmClose\default=true -displayTitleBars=true -displayTitleBars\default=true -enable_discord_presence=false -enable_discord_presence\default=false -firstStart=false -firstStart\default=false -fullscreen=false -fullscreen\default=true -hideInactiveMouse=false -hideInactiveMouse\default=true -pauseWhenInBackground=false -pauseWhenInBackground\default=true -screenshot_resolution_factor=0 -screenshot_resolution_factor\default=true -showConsole=false -showConsole\default=true -showFilterBar=true -showFilterBar\default=true -showStatusBar=true -showStatusBar\default=true -singleWindowMode=true -singleWindowMode\default=true -theme=colorful_dark -theme\default=false - -[Utility] -custom_textures=false -custom_textures\default=true -dump_textures=false -dump_textures\default=true -preload_textures=false -preload_textures\default=true - -[VideoDumping] -audio_bitrate=64000 -audio_bitrate\default=true -audio_encoder=libvorbis -audio_encoder\default=true -audio_encoder_options= -audio_encoder_options\default=true -format_options= -output_format=webm -output_format\default=true -video_bitrate=2500000 -video_bitrate\default=true -video_encoder=libvpx-vp9 -video_encoder\default=true -video_encoder_options="quality:realtime,speed:6,tile-columns:4,frame-parallel:1,threads:8,row-mt:1" -video_encoder_options\default=true - -[WebService] -citra_token= -citra_username= -enable_telemetry=false -enable_telemetry\default=false -web_api_url=https://api.citra-emu.org -web_api_url\default=true diff --git a/docker-compose.yml b/docker-compose.yml deleted file mode 100644 index 8600c14..0000000 --- a/docker-compose.yml +++ /dev/null @@ -1,26 +0,0 @@ -version: '2' -services: - citra: - build: - context: . - dockerfile: docker/citra.dockerfile - shm_size: 2G - environment: - OPENBOX_ARGS: '--startup "citra-qt ${TEST_FILE:?}"' - RESOLUTION: 1366x768 - ports: - - "6080:80" - - "5900:5900" - volumes: - - "./citra:/tmp/citra" - - "${TEST_FILE:?}:${TEST_FILE:?}:ro" - - driver: - build: - context: . - dockerfile: docker/driver.dockerfile - volumes: - - "./driver:/tmp/driver" - working_dir: /tmp/driver/out - command: ["/usr/libexec/vncdo.sh", "/tmp/driver/main.vdo"] - diff --git a/docker/citra.dockerfile b/docker/citra.dockerfile index 6597747..18cb7a4 100644 --- a/docker/citra.dockerfile +++ b/docker/citra.dockerfile @@ -1,20 +1,29 @@ -FROM dorowu/ubuntu-desktop-lxde-vnc +FROM buildpack-deps:latest as builder -RUN apt-get update -y && \ - apt-get install -y \ - libqt5gui5 \ - libqt5multimedia5 +# ARG CITRA_RELEASE=nightly-1783 +# ARG CITRA_RELEASE_FILE=citra-linux-20220902-746609f.tar.xz - -ARG CITRA_RELEASE=nightly-1763 -ARG CITRA_RELEASE_FILE=citra-linux-20220503-856b3d6.tar.xz +ARG CITRA_CHANNEL=nightly +ARG CITRA_RELEASE=1816 WORKDIR /tmp -RUN wget https://github.com/citra-emu/citra-nightly/releases/download/${CITRA_RELEASE}/${CITRA_RELEASE_FILE} -RUN mkdir -p citra && \ - tar --strip-components 1 -C citra -xvf ${CITRA_RELEASE_FILE} && \ - cp citra/citra-qt citra/citra /usr/local/bin +COPY ./citra/download_citra.sh /usr/local/bin/download_citra +RUN apt-get update -y && apt-get install -y jq +RUN download_citra ${CITRA_CHANNEL} ${CITRA_RELEASE} + +FROM ubuntu:latest + +RUN apt-get update -y && \ + apt-get install -y \ + libswscale5 \ + libsdl2-2.0-0 \ + libavformat58 \ + libavfilter7 \ + xvfb + +COPY --from=builder /tmp/citra /usr/local/bin +COPY ./citra/sdl2-config.ini /root/.config/citra-emu/ -COPY citra/qt-config.ini /root/.config/citra-emu/ +WORKDIR /app -ENV OPENBOX_ARGS='--startup "citra-qt /root/hello-world.3dsx"' +CMD [ "citra", "--version" ] diff --git a/docker/citra/download_citra.sh b/docker/citra/download_citra.sh new file mode 100755 index 0000000..bacb06a --- /dev/null +++ b/docker/citra/download_citra.sh @@ -0,0 +1,15 @@ +#!/bin/bash + +set -euxo pipefail + +CITRA_CHANNEL=$1 +CITRA_RELEASE=$2 + +RELEASE_API="https://api.github.com/repos/citra-emu/citra-${CITRA_CHANNEL}/releases/tags/${CITRA_CHANNEL}-${CITRA_RELEASE}" + +curl "${RELEASE_API}" | + jq --raw-output '.assets[].browser_download_url' | + grep -E 'citra-linux-.*.tar.xz' | + xargs wget -O citra-linux.tar.xz + +tar --strip-components 1 -xvf citra-linux.tar.xz diff --git a/docker/citra/sdl2-config.ini b/docker/citra/sdl2-config.ini new file mode 100644 index 0000000..2abb7bb --- /dev/null +++ b/docker/citra/sdl2-config.ini @@ -0,0 +1,342 @@ + +[Controls] +# The input devices and parameters for each 3DS native input +# It should be in the format of "engine:[engine_name],[param1]:[value1],[param2]:[value2]..." +# Escape characters $0 (for ':'), $1 (for ',') and $2 (for '$') can be used in values + +# for button input, the following devices are available: +# - "keyboard" (default) for keyboard input. Required parameters: +# - "code": the code of the key to bind +# - "sdl" for joystick input using SDL. Required parameters: +# - "joystick": the index of the joystick to bind +# - "button"(optional): the index of the button to bind +# - "hat"(optional): the index of the hat to bind as direction buttons +# - "axis"(optional): the index of the axis to bind +# - "direction"(only used for hat): the direction name of the hat to bind. Can be "up", "down", "left" or "right" +# - "threshold"(only used for axis): a float value in (-1.0, 1.0) which the button is +# triggered if the axis value crosses +# - "direction"(only used for axis): "+" means the button is triggered when the axis value +# is greater than the threshold; "-" means the button is triggered when the axis value +# is smaller than the threshold +button_a= +button_b= +button_x= +button_y= +button_up= +button_down= +button_left= +button_right= +button_l= +button_r= +button_start= +button_select= +button_debug= +button_gpio14= +button_zl= +button_zr= +button_home= + +# for analog input, the following devices are available: +# - "analog_from_button" (default) for emulating analog input from direction buttons. Required parameters: +# - "up", "down", "left", "right": sub-devices for each direction. +# Should be in the format as a button input devices using escape characters, for example, "engine$0keyboard$1code$00" +# - "modifier": sub-devices as a modifier. +# - "modifier_scale": a float number representing the applied modifier scale to the analog input. +# Must be in range of 0.0-1.0. Defaults to 0.5 +# - "sdl" for joystick input using SDL. Required parameters: +# - "joystick": the index of the joystick to bind +# - "axis_x": the index of the axis to bind as x-axis (default to 0) +# - "axis_y": the index of the axis to bind as y-axis (default to 1) +circle_pad= +c_stick= + +# for motion input, the following devices are available: +# - "motion_emu" (default) for emulating motion input from mouse input. Required parameters: +# - "update_period": update period in milliseconds (default to 100) +# - "sensitivity": the coefficient converting mouse movement to tilting angle (default to 0.01) +# - "tilt_clamp": the max value of the tilt angle in degrees (default to 90) +# - "cemuhookudp" reads motion input from a udp server that uses cemuhook's udp protocol +motion_device= + +# for touch input, the following devices are available: +# - "emu_window" (default) for emulating touch input from mouse input to the emulation window. No parameters required +# - "cemuhookudp" reads touch input from a udp server that uses cemuhook's udp protocol +# - "min_x", "min_y", "max_x", "max_y": defines the udp device's touch screen coordinate system +touch_device= + +# Most desktop operating systems do not expose a way to poll the motion state of the controllers +# so as a way around it, cemuhook created a udp client/server protocol to broadcast the data directly +# from a controller device to the client program. Citra has a client that can connect and read +# from any cemuhook compatible motion program. + +# IPv4 address of the udp input server (Default "127.0.0.1") +udp_input_address= + +# Port of the udp input server. (Default 26760) +udp_input_port= + +# The pad to request data on. Should be between 0 (Pad 1) and 3 (Pad 4). (Default 0) +udp_pad_index= + +[Core] +# Whether to use the Just-In-Time (JIT) compiler for CPU emulation +# 0: Interpreter (slow), 1 (default): JIT (fast) +use_cpu_jit = + +# Change the Clock Frequency of the emulated 3DS CPU. +# Underclocking can increase the performance of the game at the risk of freezing. +# Overclocking may fix lag that happens on console, but also comes with the risk of freezing. +# Range is any positive integer (but we suspect 25 - 400 is a good idea) Default is 100 +cpu_clock_percentage = + +[Renderer] +# Whether to render using GLES or OpenGL +# 0 (default): OpenGL, 1: GLES +use_gles = + +# Whether to use software or hardware rendering. +# 0: Software, 1 (default): Hardware +use_hw_renderer = + +# Whether to use hardware shaders to emulate 3DS shaders +# 0: Software, 1 (default): Hardware +use_hw_shader = + +# Whether to use separable shaders to emulate 3DS shaders (macOS only) +# 0: Off (Default), 1 : On +separable_shader = + +# Whether to use accurate multiplication in hardware shaders +# 0: Off (Faster, but causes issues in some games) 1: On (Default. Slower, but correct) +shaders_accurate_mul = + +# Whether to use the Just-In-Time (JIT) compiler for shader emulation +# 0: Interpreter (slow), 1 (default): JIT (fast) +use_shader_jit = + +# Forces VSync on the display thread. Usually doesn't impact performance, but on some drivers it can +# so only turn this off if you notice a speed difference. +# 0: Off, 1 (default): On +use_vsync_new = + +# Reduce stuttering by storing and loading generated shaders to disk +# 0: Off, 1 (default. On) +use_disk_shader_cache = + +# Resolution scale factor +# 0: Auto (scales resolution to window size), 1: Native 3DS screen resolution, Otherwise a scale +# factor for the 3DS resolution +resolution_factor = + +# Texture filter name +texture_filter_name = + +# Limits the speed of the game to run no faster than this value as a percentage of target speed. +# Will not have an effect if unthrottled is enabled. +# 5 - 995: Speed limit as a percentage of target game speed. 0 for unthrottled. 100 (default) +frame_limit = + +# Overrides the frame limiter to use frame_limit_alternate instead of frame_limit. +# 0: Off (default), 1: On +use_frame_limit_alternate = + +# Alternate speed limit to be used instead of frame_limit if use_frame_limit_alternate is enabled +# 5 - 995: Speed limit as a percentage of target game speed. 0 for unthrottled. 200 (default) +frame_limit_alternate = + +# The clear color for the renderer. What shows up on the sides of the bottom screen. +# Must be in range of 0.0-1.0. Defaults to 0.0 for all. +bg_red = 0.5 +bg_blue = 0.5 +bg_green = 0.5 + +# Whether and how Stereoscopic 3D should be rendered +# 0 (default): Off, 1: Side by Side, 2: Anaglyph, 3: Interlaced, 4: Reverse Interlaced +render_3d = + +# Change 3D Intensity +# 0 - 100: Intensity. 0 (default) +factor_3d = + +# The name of the post processing shader to apply. +# Loaded from shaders if render_3d is off or side by side. +# Loaded from shaders/anaglyph if render_3d is anaglyph +pp_shader_name = + +# Whether to enable linear filtering or not +# This is required for some shaders to work correctly +# 0: Nearest, 1 (default): Linear +filter_mode = + +[Layout] +# Layout for the screen inside the render window. +# 0 (default): Default Top Bottom Screen, 1: Single Screen Only, 2: Large Screen Small Screen, 3: Side by Side +layout_option = + +# Toggle custom layout (using the settings below) on or off. +# 0 (default): Off, 1: On +custom_layout = + +# Screen placement when using Custom layout option +# 0x, 0y is the top left corner of the render window. +custom_top_left = +custom_top_top = +custom_top_right = +custom_top_bottom = +custom_bottom_left = +custom_bottom_top = +custom_bottom_right = +custom_bottom_bottom = + +# Swaps the prominent screen with the other screen. +# For example, if Single Screen is chosen, setting this to 1 will display the bottom screen instead of the top screen. +# 0 (default): Top Screen is prominent, 1: Bottom Screen is prominent +swap_screen = + +# Toggle upright orientation, for book style games. +# 0 (default): Off, 1: On +upright_screen = + +# Dumps textures as PNG to dump/textures/[Title ID]/. +# 0 (default): Off, 1: On +dump_textures = + +# Reads PNG files from load/textures/[Title ID]/ and replaces textures. +# 0 (default): Off, 1: On +custom_textures = + +# Loads all custom textures into memory before booting. +# 0 (default): Off, 1: On +preload_textures = + +[Audio] +# Whether or not to enable DSP LLE +# 0 (default): No, 1: Yes +enable_dsp_lle = + +# Whether or not to run DSP LLE on a different thread +# 0 (default): No, 1: Yes +enable_dsp_lle_thread = + + +# Which audio output engine to use. +# auto (default): Auto-select, null: No audio output, sdl2: SDL2 (if available) +output_engine = + +# Whether or not to enable the audio-stretching post-processing effect. +# This effect adjusts audio speed to match emulation speed and helps prevent audio stutter, +# at the cost of increasing audio latency. +# 0: No, 1 (default): Yes +enable_audio_stretching = + +# Which audio device to use. +# auto (default): Auto-select +output_device = + +# Output volume. +# 1.0 (default): 100%, 0.0; mute +volume = + +[Data Storage] +# Whether to create a virtual SD card. +# 1 (default): Yes, 0: No +use_virtual_sd = + +# The path of the virtual SD card directory. +# empty (default) will use the user_path +sdmc_directory = + +# The path of NAND directory. +# empty (default) will use the user_path +nand_directory = + +[System] +# The system model that Citra will try to emulate +# 0: Old 3DS, 1: New 3DS (default) +is_new_3ds = + +# The system region that Citra will use during emulation +# -1: Auto-select (default), 0: Japan, 1: USA, 2: Europe, 3: Australia, 4: China, 5: Korea, 6: Taiwan +region_value = + +# The clock to use when citra starts +# 0: System clock (default), 1: fixed time +init_clock = + +# Time used when init_clock is set to fixed_time in the format %Y-%m-%d %H:%M:%S +# set to fixed time. Default 2000-01-01 00:00:01 +# Note: 3DS can only handle times later then Jan 1 2000 +init_time = + +[Camera] +# Which camera engine to use for the right outer camera +# blank (default): a dummy camera that always returns black image +camera_outer_right_name = + +# A config string for the right outer camera. Its meaning is defined by the camera engine +camera_outer_right_config = + +# The image flip to apply +# 0: None (default), 1: Horizontal, 2: Vertical, 3: Reverse +camera_outer_right_flip = + +# ... for the left outer camera +camera_outer_left_name = +camera_outer_left_config = +camera_outer_left_flip = + +# ... for the inner camera +camera_inner_name = +camera_inner_config = +camera_inner_flip = + +[Miscellaneous] +# A filter which removes logs below a certain logging level. +# Examples: *:Debug Kernel.SVC:Trace Service.*:Critical +log_filter = *:Info Debug.Emulated:Debug +# Kernel:Debug Service.APT:Trace + +[Debugging] +# Record frame time data, can be found in the log directory. Boolean value +record_frame_times = +# Port for listening to GDB connections. +use_gdbstub=false +gdbstub_port=24689 +# To LLE a service module add "LLE\=true" + +[WebService] +# Whether or not to enable telemetry +# 0: No, 1 (default): Yes +enable_telemetry = 1 +# URL for Web API +web_api_url = https://api.citra-emu.org +# Username and token for Citra Web Service +# See https://profile.citra-emu.org/ for more info +citra_username = +citra_token = + +[Video Dumping] +# Format of the video to output, default: webm +output_format = + +# Options passed to the muxer (optional) +# This is a param package, format: [key1]:[value1],[key2]:[value2],... +format_options = + +# Video encoder used, default: libvpx-vp9 +video_encoder = libvpx-vp9 + +# Options passed to the video codec (optional) +video_encoder_options = quality:realtime,speed:6,tile-columns:4,frame-parallel:1,threads:8,row-mt:1 + +# Video bitrate, default: 2500000 +video_bitrate = + +# Audio encoder used, default: libvorbis +audio_encoder = libvorbis + +# Options passed to the audio codec (optional) +audio_encoder_options = + +# Audio bitrate, default: 64000 +audio_bitrate = diff --git a/docker/driver.dockerfile b/docker/driver.dockerfile deleted file mode 100644 index a993ace..0000000 --- a/docker/driver.dockerfile +++ /dev/null @@ -1,10 +0,0 @@ -FROM ghcr.io/ian-h-chamberlain/rust-devkitarm - -RUN apt-get update -y && \ - apt-get install -y python3 python3-pip python3-pil - -RUN pip3 install vncdotool - -COPY driver/vncdo.sh /usr/libexec/ - -CMD [ "vncdo", "--version" ] diff --git a/driver/citra-controls.png b/driver/citra-controls.png deleted file mode 100644 index 13cf6d92bd4a8dcc9e5239dea06f7829ac597773..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 117457 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�&2TBvTaB_ItB=#jG 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%0DpjqO6RP5qG^q)wEi%j7IKv)uUB5PY6I!@Dj- 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�D@@d=-{ zU;N!y2=1z_!=#GL6I^lyyJ(%na{vMVnM@P?`HSxD<;6ti?3TS1^SX^0SHn4UQ4J>0 z(<>!MAOv~FH=U_-ZqIS^RP0J2z+!+vWL3enBZ=?t-@`wTYzN$_ougQKCw^Oz-uK3{ zf+N(>+B9nEm4HM=23SNr#^dZ;XZFf3+#}6!tr*3Utq$I*rGqs0O;jj*(@KYz5HOz` z!U4yhU4T2n8g>)tbeR~gWGSyNB)*}Tx|daRxInLS$=m=Tf#_t6TD@nsUfQ0qlFN1j zdgMXP;?GKxJrWxi^IXS5^@w2@s%SL}yWkJg194`&hmrOs-f@-C8K()NReaOAKM3EK z%Cc>MZ9|WAmHvQMvKcs?f|JJxBd3BUt(`a3GfilBS4HqRSKe)FRt+^6|i&s_;DTK(!{_*?ehq{E5ZC5QhEdihM(2at$kjsnK1@r zQEY#H?W0!jtNxQEmfyptPvF)GPr24im5!U(aVMGQ84Jl$Tv#c3Tu7CI1d{PhEEgFk zOHLR?_^^md6qXs-^Rr%ZNur5I zFKp+AG?ixe#~twN3=KXmf~f7>NP72z0;P3*4a1ScVg}!|zCL3qxqns+qq_k~Bz;NM z&De?glCrsQ0}hreV_9?Cws{M77hz37Z9TwAwX4!#IYQX$W>hy)IK z7Xp{QKd%cg=lz+3yiAbEh~_9`CSoz-RpohtZXt(ewBYvAkOtPpB-%K%#IzR8?x1Xl zn=c?&BMh+eZ5XJXRn3s!Y|7QkqFRR-yACzgk!;S2i>cxf+3jn}8ae2WM4>JGR%+UA z-fu9=g|!EqspU^+sYf&o+jy)~q{J!-79kP>NE}MT11mVs;;iV_2DjRAQVJD1UB{rm zZL@~I(5$vQU3DTY(@`&?=jXBEZX3Q{_ zOn>B*OfMFD5gfaw6bK5IY;RN{5Gf2_f zMx)5@nb5pOO3!}D%7)!l5uT!%q z=iY2YEoT5EZAtB8i}++Sh*32nKBOW@#E}H%KV8%oQKd-fIB#{BSL8PD5W#JA=?zSY zfo6A_BW`Lt0bCtlX%4;urrFEcHkMxWkAqMFX5prQ91~|D!t7zw&^+I2gu#*^!*L>z z;rGFt?I+?xd8n-|RPFs))wjSv{aH2W6jlQA!nc6!h|5Ozr}0QY=}Umo+ta$Zum6r+ z!&ZHVMb?N=wqz#ke!uuuF*`8T8ZmOa* z=PMXeLOuP3hi&C?!}5B!F@>=}?=RzSaT_p?jY&IE(2#q3XH!%<^lFI=1;1rjnx{_- zW1{8I7)Pd;9;_@PZR;RIeMVSvveX;Q@>*4_1rUJoAu2+hZODf}7DHDO&Gujdn6WLa zA|?sKr=nNQH+a&J(0cI10__v%Y9J9z_GZfU!>i$pTR<~9dB5%cSnaLx zf2ummsHmd0@6({PbazXM)G(B^AV>*HOH20*(v8B<3@9l`h|(nt9YZ4^-7%8FFf+ z*#?i6(xlhSR?k;glC>JnWK)LT@V{&5S10`Yk84Ge&)FUqQ3#Hqou@o%!WgiZ#bN+Z zx7VeXT5MY3ZHVDaLiIIBna@gaa??K|`1;was;3l;bZ3F<-T2B;WAfWeJ4Bq*lP1u0 zdMSkd^6cxoY0*#`mKhB8S;X^)GSw@ENuej1_H{MRLW_lQo|8jAf@^Dblg@63ex(D? zGdx8+(>t|Oi9r7t9pS`zGOF<`)5%kWZ%L^D>0%=*pB_cybt%G7$Qqvme$Ij)6tOK` zyn6-j97oF4)8~|>4DKo|eBJ5^tuS{gGRIkO?G;P7N%OK-EK8Ayro^K7`IKI8qA~qK zkc-gHlI)Y2>(#kas-&yO$1h#(zE@50zqmlOF@25=KXmj-{$;MC1nwd&P1VJ4;ZD9J zq$rO`yKyq-Tr{097L8nLWKLtyS$lsl^ZvUv6h>5QQ4gV|?*qFjp2F=P=x z0!vp0N_E3hcp%h&$?_sgn|bA(DaK0_yx5159Gh(X_H>m}CJPzuY=*Bv^7Jri< z$1I?-zBXoHL_~z{Ve+otD`_v3_i}Ms>PfEf04e~!A4ijowf%e0XrQ#SiKHwhHw zpVhseQov#X!3o0VUHp@kWK5Y;L?6s7li8Zn2rsu@gdhJS)7kv?y7V1=SrQntlVtoe z!Kh{4ls~eeuR*tPyJ0-hNTFYlwK<$L5s=gQ`Kl6d4IIpaHtF~$m0&*TK7~-AuiQYBwQz2X+PneHeKAjx-93M<${MY7IDOKkhMqT$YCUFdi zG1l57vBB_l?JQ;|^&~}%lMewcC=i_Ng>%7GR6XvnJ<#aS+>hCx*v6+_KUTO|ptj!d5dfT@R_2O?p%hTFpYF9-#2iic=K2IuUT@ZURE3P&**;l!$WSv7oe^Ci~ zMhzGZfAW<8b+iM&Y939?4X7QP@z|(2Pfd-TG3erfkcfKj4z_x;KjQ$bu~f)Plh{@V zi(1)Q^{cSFvm?H?$H$wISOO`PO~G^-EIuY8QF{>Ov(0Xq;iOB%i?7fC(vN5mtrtlB zcrx)OnepO*Ug!qxSdC>lFmPR;zIbHYGuO~&nH)Jb1@%GgfPqlk@j~EI?CFkHYi3}2 z66m~r^_O&CMW)N?(;h|&$50TYOC*J#RLWJs(sOMBxRk0@*Kln7$-h&03An&R4kMK<-Evi; z*a}l<^({B_=~6%{S$m)RKNR|{pcN2Nk2$m$No1z^K_ak^Ts@jq?Uq|(ce?73mK7etB^eJ8cHLu@rM%04f88XH`W0$1D`|K5Bl@b8in9LlpO zCihQepVGtzX8$4l46}Cyj!V3awq`g}23Wtg9UY@=r2A`ZYMSGv4Y=*!H7 zub%2l#Fg~-c1Sf>Us}S_YoH4DO=8lBJSSk)j$)kT<6cRMs`&M^`>;k-3yR?V)E|N>cULbW5;ouhm@`9x&rhYTKC8K)uAU9X?%|Xs{jayqacT>wWOK$9c=Xz!tT>N&DyP_F`sC8^r|ZiiJDM_n}cRQ5{gOlqehJhi~C~sP4{xvD1mDS zHJ6BR5GyC?mU$3rEj!AXulDxQn8Z|c&_B8ggwoH@KO^z{W7Be5p3hSx2dSSyJ0fFi z>0qnh%bO_l`l(D*m@Q@0q@0?vSl~ku8n;TRm-I2}fN-2Le)Vu{2@2U6_U$Bnd?`Do zD?ExY8bbYbY_)N{mKYOemjO`>xRt1ATdSB4h>hnZkOQo$rf0-T3AmCxvlAQKo^7>_ z3;!(ge z%EGdk1@P{DHDg{y)lb0b=1&CSG1W?2LR2+MP~NLW${^L0BLDKeT6%+bkqHYIt2}A! zt~`uw=;R+;!39Wm+AE==Q9ZWPgKryK{VBEhPONOm483PI_SG<^n#jeocmD@W)SZc* zG&!gcsCcm!Js#r&h@=B?uZ%q4-28s2p_U~U1xK^Ir5Oa zu3DWfhq8CcxskOUOuC+)hU+C>Jg(eR!ler+*^9PXkU6F@b!=TC|LB_4sB94_ZK+g@ zbtM+uiM%WMtec2Y=+c@1Sks~Ter?O5?r()w26=bCGwu8|;42D8coNiG`b$xaS!*s1 zyc%=Kbynw{Qx`=z!{>C#+H%}?mn)mt?$4W{O~$eN|4N`bS7OlBbmJi9c|L#ZbVD65 z*Yt)SlOS8Q%e!dwTx@iw&PPeJDU;&xq|SCA`)Ur$Mx-+YaM2|yE~ypVr7@>t_;k*s zDAiMhWsFql+DRhe4d*KG_hs@Jo>mCAW$yFy1){I$ED@pmy+0fN=?^q)hUM8HJj}tv z`7K;8Y>*6onFIOTnE_}uS@Wev?2@2~?5o4deIlWxcy1=OdO0CA>2n6AwMR|;uL=e5 z;A6OnP@@r^Knw_*b{CpJNI|G=r^&B@hq!y6Zq8636`dFV zYU)LW7v02q0F}Ip!L%Dn8ZZym77+WH7tR+t9tPi8f@|!;OCuw0D^o8<1MktgImU-) z2{ECM;sTTZgzpzJwr`bB3=W_J!zYpCU%pVD;P7BEElg@oC_CaKN%B617`yxYj=*Y& ziG&WCU;bM`+;Z!JWvU(-kFv|mvNWH3aRmb;9sYd$ zCIp*}k+QL35$|>S9jP3x5|b%zF_VdpT5GvXr-Px4*hw@$T=&bMR6nctl~IXaQJi7V zJ7Nik@`l9B*91nfpD;2)wn)Q&j!GZhB$MiN@!;m2StwXP2W)s+1npHoqn09Nj*CHF znoGW(6N(}q>gDfMg=fctV!dZiVuiW8w;NAZ;@in_57ZVoxS(Py5dm zK)hk%mJ+?1#DkkYVP(%-%wCO^HDe(q8?dfsAOoe`lBh$m4Xi_KEy+y`S5c)MhvA|J z9siP~ZnrcUjAdFeS%^rW5<&PQmz;^d>0p{!XvWb{B%)LNT3Vn^YG@w z(1TJGSM`^Zuep7SGS568o_}D8oad2#`~dCwp}IyUPNu#KDG+i=wKANH{G(9x*HTsE z?Rha+_ctd7z*z&xVeU(VYpmho&C&|}jSUCc1+!8zR z7OedVY2X;ke)ly*=KRZ-=HDEmZhO_}(^AF6`Z~81x@)ED1_9OFmmL(&EyjdfG^K@B zXWp|vTh&clrWG#B^Ow8T9APQQH=&aiZ8N*r|ZgKKp~E&sbp>C)t0Pp>5Zt1mnl+zIA)Sx8EVPLZlB}`oK}*Me8ho$ z*qGl@;o|)Myg;K0ZJrjo0Y=GEboEGX42bBn{|ZpH+Z@$ zw{?FB8KOyUnce|(ZC6`0JKA{r)JAogQ!_P&pwit%TxpGQKJ=n>g@r!KgjK_BRK z(me=;byfy2N4>{rjG1hD5m$5gD)0a8py*7U{Lp){%-)sLHA}ry(A&=$d4803|AJAm0M%jym4-%~<5-=HiC4E$>xs^f@82Pa--tM?n2+F^C#M|)ja5$%%KA8zl(t@5-G8e*+|9OS|5&t= z-nl{sXG_Wf+g_66G`N5|ncHrgKMS9R0b~*P$l&A_sbBtT?!xRfe*34pwwG{pOe`A<}Fn3~G?1p#Jr+ z`>bPI6yrvIyH{$GMuncfVT0x8NHFv_P50FBmJbjS2b?QF5Y$19v*f9xPx!;@Ok?vU z-`~O6dR$`GF}h&|XotPr4D{oJ`gIH=TG#5EsG`rG(FCtvl9lJE$zf51YkR?E`HMw~ z=IU|B&uwtG{oj2w4vjWn6l;5vM(L@`@)J-$7Y~6XLEk(meCD=KmX)g~vBow?Zr(Oi zjpq)u_hG$eKx5x9M^e?g!Zd9pHa1mJMu!8>Zo;N@7|uJ$>Y5T(5wM?> zPC|HQS5S|T`c^)qAdn9R3R ztgW2Sn+O#YTQ2o0E51n@s~3e>U2Q#IF)rJ0Tu6PNO$9s7Iazn|=ye?&Oq&2ljds#m z&Dj2mJZfa>!pGGC|G+IKW-hUnDtT;QD;n5KXzrEAnh`rp@R3PuP|uzX-}^(@EAf`!0K zlD)^6xl=o2vVDuOy*wy0+a7Hkk|E5t!~*9FO2@NiRZ2tG3Fb^EMQ(LDx+I;c+yO_; zg4f1p1|r}?X|sMf{6X;dXU@EcvvJCUbuht**0a0RP-zAm<-)2|>+k5pmZ8kJi{NSrLv*lZWZIyX&lg^XA1 z!_~@n`(qN~Z5p$!{0y-c^<hY%|fo*rR*fQHS69q(3H3;Eq2`gS;VbsKY#a!C$0VY z?T~>8(0U*?P1%4<&b|r-Am_?5?dKBl;wyKR5M^A~UUW!<5}Tuu8_S?Cd4ne~o#WRb z@D~c}PglF8fs@a~tP``bMqW~edal%$XUU+)&YnapWw{ z60Jvy%?qeyQ>)h~sAsLhUHS#d8Tgs4v3N8Dlq^WbUacirN4)B=5X~nCC#ybtS!7Gj zco@URS#muHBo zZibCMFH6gni6O3ZWNLH(yB>egu^T&Ero60^mx5>vc?)YCF*2v(Emd~8!6;v@7i`*_ z40)NGWvHCn&ss^j$BMdTG`bM3zT8HX>#;7aw*Wd0%z$DAYgTx20N;=-54cKux>c7S zdUMe_!o`9AheRJ0tW&KqoavnO`gp%@n(pKWPX~H~15RZ3R{bS%8<-zE-prkK9M;0n zv%QI}qjj691$Mz(nSjEAxWPM-iZllmW(+jUGVr{5cquQ=TwE`2NnUCa??Gc6bXUuh zbI`;Ley~`%bmdWymi^~aEfmez_WbQbDw<2Y(46(EOYXp4d_XS;x<@`hx|im3ls+R3gl9KdDRt4|efuuje7s4c|O%v9N zKR!UA;hmU5g)lrk%Tn7UTK=Q{gy31;!`@p5?gZ+Z4+)jC1O$8X)p-Syf=j~A9TW18 zp5WOFYHSw<@7co=lvr|P83zBn$aTaM?L@v!YiWbWtPmV9ydApan5IYs{Vw4rkv{5WP`eTHNLGjbQm7jft#+|rW%Gl zA*{Rj=QC%B$Io_{^JO)blIs&8`zji~iK3`=ImiTGsVjTz(djp`E1AYFZ1N+1ha?<# z=H3@iJU_^kvLYVZZQ1&`MsL!If#d!pe%6F z4lfhS93eCA``?CMwZ2ZFrM+WY<<|D4FhiMG6V}>(uU%^$-?dVyPp6#^TJ#R_G?=Rx zRHdwOu*om&8^eSYnys3)+tgIA9O$ZIkElVKGy4zCksUILn-Q)-TTI7#$v+^diJ_U; zvhmFPKA$HWr2yodETY^D91&<1oGNv7+sqwUKJM@4ZP^mqYHx+}~d3OA;5v@BX(xmP)s;ND<2dlcVym8JYxoGJ zI5^>t>)PCHF{ul7QA#1yKnsd|dwbp#eBJ^*b&^cxtIC8<~Fo8~9{#+bM-?uzq;Pbrd47Vdu7Szz~lbXlz#) zdBjJ2QrCh~|4)-&yAP0+u|x#vFE!spt`sMK1zp=Qzqbthj`&)wssw zT;|gPLw)EEDGB#xr_$R`>r&T^2hk&Y^_KE--SjmJ3;7y?lWC-Ee=^=>I$I(}TbWz_ z1R;qCd>d+OQXz@$2R;z7D|y!DbtSKGl|OSxO9e6mg>7F2*GM;6-BM7Mh;mFUnA<GboGFAW_Ax9zPg zvh8c7233U~Eo|s5q@y3mA-|*cMd+jU5793k#&3oVrg`2&Mq@Wc(Jq7zsMW%_;n-?PS zk5R3*Tv^*@)1xM7uN9AdAM;H#vW1{I#%pN)b|L~_<77{li`bV%KBl>E7BXsY6-(EX zt9LvX0c3wWq8zVQ^xthB7c)&nwA&2tC8tX?29HQo&Uqy^e&DYJSl~@~ir!uzSqO1n zLU6S3-2I601`xnU*>~^o)Rn?&vUA^-%_~RaQuc0Q)`G0)Uo`;H!N{tW>h;5C%iWK+ z-FrnIyrK6gRkzkBLN*WxtVG!)HY$_rZq!0v#vYD`0$uG^y};fvLTG=lKz&p|+YJ*o zE@f9%^IF}w;;`cQBh?3Dq^>09m#;nGsGM-?WDgOmwvLJY8Bs>;pk71q$ncn^+BiOB zyj+JGr{AP<{VfX_@U+lNf9G^pohOO_VboEZXM|o z^HR(<>RpE+SG6V{(y-I@Dhk{B%J>O`*b2-`0t$KEZU49QtBt$;W*x?{+5bOJ#Pm}q z`RCKJv(X@N)|27PWCrRtBG&!YnY3|C5H|U|9INyL3lA>q&TTNvtSMyJw5u0?Y@^a% zxsm)6EB~*`*DBGUI4^Wn$#pDR{e@=*%U`l8Cn@z4b$Y-7k~p>;?DYK-*!U~++XF8C zi=QmvJj2?>Zx-xWs?AUU?A&m63o%3c^=hA7#&9)`YTEs$UJLn(zdOgn3;@@?NRLX# z@w`z*Ew9*#1&wVl`h1^$PyKGp3&M&mG2IYyak^hR)!|SeFOgzneK|Abfw0QEiF_2P z9WsZfiMhBGqP1^H;RQeL-8)UF{NBIN%WCssdV)(*wUiB3dZBtW(_)($IVbJ%H$!TB zMWJc71rW+rO@W7`4gI+Xt}-&~ zxY`I9Yuj|hges>jyDYpk8~2@_H0t&^Oa9ZQ@f+F#7B=VlMf4OWQR%;pm@ppTS6*iO zn+5d(N+&$V@c-Auv;PV|SEZhQEA@Xm|02>M4kxQG{aTgT_%3d>)$M;r#stVB!eMdJQ`HxC_-`8jNvgA+Vn^xyo9lPZO#e;eKiTj` zbS{U+oQguARpxmWb9Z>9hX3DrN?g@e6iB$_S#0t>&MM^lFrwAE4-0c>sp+a#KC_Pa EAHEm}2mk;8 diff --git a/driver/citra-hotkeys.png b/driver/citra-hotkeys.png deleted file mode 100644 index 3bc55749707bfd870bdb7451e59fc8f9010c1ccf..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 90327 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≶I`-j(vvjn5 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 diff --git a/driver/main.vdo b/driver/main.vdo deleted file mode 100644 index 40060d7..0000000 --- a/driver/main.vdo +++ /dev/null @@ -1,16 +0,0 @@ -# Wait for citra to finish startup -sleep 3 - -# Main test logic -key ctrl-p type "/tmp/citra/out/screenshot0.png" key enter -keydown a keyup a -keydown s keyup s -keydown z keyup z -keydown q - keydown a keyup a - keydown s keyup s - keydown z keyup z -keyup q -key ctrl-p type "/tmp/citra/out/screenshot1.png" key enter - -capture final.png diff --git a/driver/vncdo.sh b/driver/vncdo.sh deleted file mode 100755 index b02c161..0000000 --- a/driver/vncdo.sh +++ /dev/null @@ -1,8 +0,0 @@ -#!/bin/bash - -while ! vncdo -s citra pause 0 &>/dev/null; do - echo "waiting for VNC server..." - sleep 1 -done - -exec vncdo -s citra --nocursor --delay 400 "$@" diff --git a/run.sh b/run.sh deleted file mode 100755 index 712eabc..0000000 --- a/run.sh +++ /dev/null @@ -1,20 +0,0 @@ -#!/bin/bash - -set -eux -o pipefail - -if [[ $# -lt 1 ]]; then - echo "Usage: run.sh 3DSX_FILE" - exit 1 -fi - -trap 'docker-compose down' EXIT - -rm -rf citra/out driver/out -mkdir -p citra/out driver/out - -TEST_FILE=$(realpath "$1") -export TEST_FILE - -docker-compose build -docker-compose up -d citra -docker-compose run driver diff --git a/test-crate/.gitignore b/test-crate/.gitignore new file mode 100644 index 0000000..ea8c4bf --- /dev/null +++ b/test-crate/.gitignore @@ -0,0 +1 @@ +/target diff --git a/test-crate/Cargo.lock b/test-crate/Cargo.lock new file mode 100644 index 0000000..edd7621 --- /dev/null +++ b/test-crate/Cargo.lock @@ -0,0 +1,119 @@ +# This file is automatically @generated by Cargo. +# It is not intended for manual editing. +version = 3 + +[[package]] +name = "bitflags" +version = "1.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" + +[[package]] +name = "cfg-if" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" + +[[package]] +name = "const-zero" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a1d3d68618a1f2c2d86e0bd2adec82e31960ca11aaeb5f353ff01746a4e08f36" + +[[package]] +name = "ctru-rs" +version = "0.7.1" +source = "git+https://github.com/Meziu/ctru-rs.git#ac6c81e7819185be46576af3441f5260d39a2320" +dependencies = [ + "bitflags", + "cfg-if", + "const-zero", + "ctru-sys", + "libc", + "linker-fix-3ds", + "once_cell", + "pthread-3ds", + "toml", + "widestring", +] + +[[package]] +name = "ctru-sys" +version = "0.4.1" +source = "git+https://github.com/Meziu/ctru-rs.git#ac6c81e7819185be46576af3441f5260d39a2320" +dependencies = [ + "libc", +] + +[[package]] +name = "libc" +version = "0.2.132" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8371e4e5341c3a96db127eb2465ac681ced4c433e01dd0e938adbef26ba93ba5" + +[[package]] +name = "linker-fix-3ds" +version = "0.1.0" +source = "git+https://github.com/Meziu/rust-linker-fix-3ds.git#d5d3be4a0da876df6d6ac55cc8b48488713e149a" +dependencies = [ + "ctru-sys", + "libc", +] + +[[package]] +name = "once_cell" +version = "1.10.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "87f3e037eac156d1775da914196f0f37741a274155e34a0b7e427c35d2a2ecb9" + +[[package]] +name = "pthread-3ds" +version = "0.1.0" +source = "git+https://github.com/Meziu/pthread-3ds.git#42a80c0e816251138df535648258671d93e047a6" +dependencies = [ + "ctru-sys", + "libc", + "spin", + "static_assertions", +] + +[[package]] +name = "serde" +version = "1.0.137" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "61ea8d54c77f8315140a05f4c7237403bf38b72704d031543aa1d16abbf517d1" + +[[package]] +name = "spin" +version = "0.9.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c530c2b0d0bf8b69304b39fe2001993e267461948b890cd037d8ad4293fa1a0d" + +[[package]] +name = "static_assertions" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f" + +[[package]] +name = "test-crate" +version = "0.1.0" +dependencies = [ + "ctru-rs", + "ctru-sys", +] + +[[package]] +name = "toml" +version = "0.5.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8d82e1a7758622a465f8cee077614c73484dac5b836c02ff6a40d5d1010324d7" +dependencies = [ + "serde", +] + +[[package]] +name = "widestring" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7157704c2e12e3d2189c507b7482c52820a16dfa4465ba91add92f266667cadb" diff --git a/test-crate/Cargo.toml b/test-crate/Cargo.toml new file mode 100644 index 0000000..b5dd4a7 --- /dev/null +++ b/test-crate/Cargo.toml @@ -0,0 +1,9 @@ +[package] +name = "test-crate" +version = "0.1.0" +edition = "2021" +authors = [""] + +[dependencies] +ctru-rs = { git = "https://github.com/Meziu/ctru-rs.git" } +ctru-sys = { git = "https://github.com/Meziu/ctru-rs.git" } diff --git a/test-crate/src/main.rs b/test-crate/src/main.rs new file mode 100644 index 0000000..c8957bf --- /dev/null +++ b/test-crate/src/main.rs @@ -0,0 +1,53 @@ +use std::time::Duration; + +use ctru::console::Console; +use ctru::gfx::Gfx; +use ctru::services::apt::Apt; +use ctru::services::hid::{Hid, KeyPad}; + +fn main() { + ctru::init(); + let gfx = Gfx::init().expect("Couldn't obtain GFX controller"); + let hid = Hid::init().expect("Couldn't obtain HID controller"); + let apt = Apt::init().expect("Couldn't obtain APT controller"); + // let _console = Console::init(gfx.top_screen.borrow_mut()); + + let _ = unsafe { ctru_sys::consoleDebugInit(ctru_sys::debugDevice_SVC) }; + + std::env::set_var("RUST_BACKTRACE", "full"); + + let res = unsafe { ctru_sys::gdbHioDevInit() }; + if res != 0 { + eprintln!("failed to init gdbHIO: {res}"); + } else { + eprintln!("init gdb hio"); + } + + // let res = unsafe { ctru_sys::gdbHioDevRedirectStdStreams(false, true, true) }; + // if res != 0 { + // eprintln!("failed to redirect gdbHIO: {res}"); + // } else { + // eprintln!("redirected gdb hio"); + // } + + println!("hey stdout"); + eprintln!("hey stderr"); + + // Main loop + while apt.main_loop() { + //Scan all the inputs. This should be done once for each frame + hid.scan_input(); + + if hid.keys_down().contains(KeyPad::KEY_START) { + break; + } + // Flush and swap framebuffers + gfx.flush_buffers(); + gfx.swap_buffers(); + + //Wait for VBlank + gfx.wait_for_vblank(); + } + + unsafe { ctru_sys::gdbHioDevExit() }; +}