press Y to remove a game from Recently Played? require confirmation? use REMOVE (from list) versus DELETE in language this is much more involved than I thought because of the way we load and present recently played games switch from pthread to signal for usb audio check? eggs said there wasn't really any difference BUG: dis/connecting any USB cable causes stutter not present in MinUI 1.7's SDL step back through commits to determine when it was introduced doesn't seem to be caused by USB_* functions (persists even though commented out) problem went away when I manually deleted .tmp_update, System, and TrimuiUpdate_MinUI.zip and installed fresh from stock... I think this is because of adbd, it only happens when USB Bridge is running use inotify to detect when /dev/dsp1 appears? doesn't work with /dev :sob: unnecessary, the stuttering does not appear to be related to polling access(), it's lower than that add eggs' custom keymon? I think I might fork it to remove suspend and dependence on system.json write brightness and volume to files in .minui? update brightness to have 20 steps with 3 unit intervals from 60-120 or 65-125? leave as is for now (more to maintain, no real added benefit) tried integrating but its dependence on tinyalsa is a dealbreaker (figured this out!) requires linking to all emulators didn't always work (in hindsight I'm realizing this might be because the makefile was the only thing changed so in the cases where it didn't work, maybe they didn't actually recompile) tried again tonight what worked was dlopen-ing tinyalsa with RTLD_LAZY|RTLD_GLOBAL before using any mixer_* calls oddly I still had to -ltinyalsa in MinUI's makefile but not libmmenu or any emulators... but modified keymon was emptying system.json and always defaulting to max values emptied json happened with eggs gmenunx version too but it successfully read the values correctly (before nuking them :sob:) building SDL 1.2 (outdated) git clone https://github.com/libsdl-org/SDL-1.2.git search source for `sdl_nomouse =` and set it to "1" export CC=/opt/trimui-toolchain/bin/arm-buildroot-linux-gnueabi-gcc; ./configure --host=arm-buildroot-linux-gnueabi --enable-input-tslib=no make load it up by putting it somewhere in your LD_LIBRARY_PATH scummvm https://git.crowdedwood.com/scummvm-rg350/ maybe MinUI could special case its weird rom format? bad precedent https://retropie.org.uk/docs/ScummVM/ xm8 check out eggs PC-88 emulator https://www.dropbox.com/sh/854r0eye4za40e7/AADoQ_bIuw-UuVDhyR5ucJvYa can we fix the orphaned clusters SD card problem or would that require kernel changes? https://elinux.org/images/5/54/Elc2011_munegowda.pdf is tearing patch affecting battery? or is my battery just wearing out from being fully charged all the time? is the device running hotter? can we reverse it to improve battery when sleeping? check eggs tearing test source also look into CPU Timer, page 84 of F1C200s manual I think it might just be my battery... :\ add more variation/peripheral paks? WonderSwan Color.pak? Sega CD.pak? Sega 32x.pak? TurboGrafx-CD.pak? or remove all variations and leave it up to the user to create and organize? maybe don't create any Rom folders, let people choose from the zip? add tips to boot image? System/launch.sh would check for .minui/boot.bmp if it doesn't exist, copy it from nand then replace it with an image with a random tip on it StockUI.pak/launch.sh would restore (for the dual booters) adds unnecessary delay to boot + risk of bad nand writes not worth it for 4-5 tips something to watch out for: launching games with a remapped pak when the target paks roms folder doesn't exist breaks all saving (in-game, states, settings) could MinUI (and it's family of emulators) be ported to this? https://a.aliexpress.com/_mL5bVUp to share an SD/save states across a portable and home console make QR codes with https://www.qr-code-generator.com MinUI+libmmenu suspend before poweroff and resume have the emulator register a suspend callback with libmmenu. Then before sleep, the menu would display the suspending screen, call the callback (which would save a normal state in an otherwise inaccessible slot, say 99), then when it returns clear the screen and write the suspended rom’s path to /.minui/suspended.txt. If we wake normally we delete the state and suspended.txt. But if we power off before that happens and we find suspended.txt on next boot we automatically open the rom and load slot 99 (and delete suspended.txt so we have a clean launch next time unless we suspend again). will any emulator data be lost if you power off without quitting? Saves? Settings? early on there was an issue if you didn't exit an emulator in a specific way it would lose this stuff, maybe it's been addressed... I'm leaning against this because of pcsx's long save state save times if you put it to sleep by accident or the distraction took less time than expected you're stuck waiting for a suspend state you don't even need but I'm interested in consistency and parity so I don't want to leave it out of just pcsx... I wonder if stock brightness at 0 still being set to 70 is what results in setting brightness to 0 during sleep having no effect on battery drain... no improvement but also no burn in so I'll leave it usb audio has a negative affect on performance of emulators that are already struggling super nintendo wonderswan passing for now keymin this is waaaay beyond me :disappointed: feasible with what we've learned? keymon volume setting is broken with USB-C headphones/adapter it writes to device 6 instead of 3 (or 5 instead of 2)? don't create rom folder on install/update I don't like when the stock launcher does it why would I do it? The zip file and readme cover how to do it hmm, what if you wan to add roms later, after you've ditched the zip? how would you know what was supported and where to put them? file naming conventions use .txt for human readable data no extension when file has no data (eg. its presence is used as a flag) mount an extracted Trimui factory restore image called "rootfs.fex.iso" as TRIMUI0104 with ext4fuse rootfs.fex.iso /Volumes/TRIMUI0104 vvvvvv needs data.zip from https://thelettervsixtim.es/makeandplay/ swap is required to (attempt to) load audio setup dd if=/dev/zero of=/mnt/SDCARD/.minui/swapfile bs=1M count=128 chmod 600 /mnt/SDCARD/.minui/swapfile mkswap /mnt/SDCARD/.minui/swapfile swapon /mnt/SDCARD/.minui/swapfile remove swapoff -a; rm -f /mnt/SDCARD/.minui/swapfile update PLATFORM_getOSDirectory() to write to pak strcpy(output, ".vvvvvv/"); no music: Unable to load Magic Binary Music file: Unrecognized music format because trimui doesn't support ogg use temper/tremor? video isn't working only colors or noise are rendering is it the bit depth? abgr? both? pcsx_rearmed double buffering restores emulator drawing and fixes emulator menu flicker but Sony Computer Entertainment America screen still flickers gambatte doesn't use double buffering but doesn't have any problem drawing... is pcsx setting an SDL or build flag that's causing a shared SDL context? can get same results with single buffering by moving dlopen to top of main() before plat_init() is called and our video is setup guys reporting that the flicker happens on a MinUI-less build so I'm going to ignore this issue for now logo font Marta Bold https://www.fontspring.com/fonts/fontsite/marta when matching extensions the file system is case-insensitive (but case-preserving) match_prefix/suffix() are now case-insensitive exact_match() is still case-sensitive what to do about pbp pcsx doesn't provide a great interface for switching discs (next disc, no indication of what disc you're currently on) so nothin? picodrive swapping discs via mmenu requires two presses of START I should not worry about this, no one is going to use it... patch sound from 1.95 per eggs suggestion didn't work, Sonic title just had percussion, tried this: https://discord.com/channels/529983248114122762/540168599063756802/824470219497537586 also tried just replacing my pico/sound/ with the one from eggs source, but that wouldn't build problem cloning or adding a submodule with this error? The authenticity of host 'github.com (IP address)' can't be established. you're probably trying to use git from the toolchain environment :face_palm: git submodules are back on their bullshit Fork is asking for my password to push my fork of picodrive used as a submodule by minui... I can't remember how I resolved this before... the issue was gitmodules and the individual .git/config files were using the url of the repo https://github.com/shauninman/picodrive not git@github.com:shauninman/picodrive.git once I manually changed it over it started working ugh, my submodules have all lost their upstream remotes? need to re-add everytime you clone apparently git remote add upstream figure out how to distribute Zero Stock.pak or maybe don't? I did, for people who use separate cards redo emulator name detection to support subfolders it should be working as is... cavestory how does ShowMenu() work with games? does it? can I just hack it to create a save anywhere? (probably not...right?) look into SaveProfile() and LoadProfile() got saving working, could not figure out loading... move saves to common folder but which common folder? on second thought, since these folders are all invisible, I don't love the idea of saves being too far away from a folder highly trafficked by the player... kill/relaunch keymon on sleep/wake? or killall -s STOP/CONT keymon makes relaunching MinUI crashy, the audio device disappears, seemingly permanently was this interacting poorly with suspending the display? or independent of that? show charging status prevent auto sleep when charging can't /sys/devices/soc/1c23400.battery/charging is always present and always empty :sob: --------------------------------------- interesting dirs /sys/bus/platform/drivers/ leds_pwm & sunxi-leds /sys/devices/soc/1c21000.pwm/pwm/pwmchip0 echo 0 > export -- to create pwm0 cd pwm0 ls -- modifying and enabling doesn't do anything visibly echo 0 > unexport -- to remove pwm0 can't export 1, it's in use? /sys/devices/soc/sdc0 cat sunxi_dump_gpio_register add the following to a pak and check it's output when connected to power and not cat /sys/devices/soc/sdc0/sunxi_dump_gpio_register (I wonder if these are input or led values) cat /sys/devices/soc/sdc0/sunxi_dump_host_register cat /sys/devices/virtual/disp/disp/attr/sys screen 0: lcd output backlight( 70) 320x 240 type | status | id | pipe | z | pre_mult| alpha | colorkey | fmt | framebuffer |source crop | frame | trd |address ----------+--------+------+------+---+----------+------------+----------+-----+-------------+-----------------------+-------------------+---------+----------------------------- NORAML | disable | 0 | 0 | 0 | N | pixel( 0) | disable | 0 | [ 0, 0] | [ 0, 0, 0, 0] | [ 0, 0, 0, 0] | [00,00] | [ 0, 0, 0] | NORAML | disable | 1 | 0 | 0 | N | pixel( 0) | disable | 0 | [ 0, 0] | [ 0, 0, 0, 0] | [ 0, 0, 0, 0] | [00,00] | [ 0, 0, 0] | NORAML | disable | 2 | 0 | 0 | N | pixel( 0) | disable | 0 | [ 0, 0] | [ 0, 0, 0, 0] | [ 0, 0, 0, 0] | [00,00] | [ 0, 0, 0] | NORAML | enable | 3 | 1 | 0 | N | pixel(255) | disable | 10 | [ 320, 240] | [ 0, 0, 320, 240] | [ 0, 0, 320, 240] | [00,00] | [83880000, 0, 0] | turn off display echo 1 > /sys/devices/virtual/disp/disp/attr/suspend turn it back on (doesn't restore original brightness setting) echo 0 > /sys/devices/virtual/disp/disp/attr/suspend is there an equivalent for audio or memory? try running find in /sys on device https://www.kernel.org/doc/Documentation/ABI/testing/sysfs-devices-power look for files named wakeup or suspend find . -name wakeup ./sys/devices/soc/uart1/tty/ttyS1/power/wakeup ./sys/devices/soc/1c13000.otghci0-controller/usb1/power/wakeup neither did anything to wakeup from echo "standby" > /sys/power/state find . -name suspend ./sys/devices/virtual/disp/disp/attr/suspend find . -name pwm ./sys/devices/soc/1c21000.pwm/pwm ./sys/class/pwm hwclock -r hwclock: can't open '/dev/misc/rtc': No such file or directory /sys/class/rtc exists but is empty