Iwant get the same data which the physical card holds and is read through any NFC reader apps (eg. NFC Tools) but using android app using HCE. Currently the data which is read and hosted using android differs in Technology and Serial number.
I am running UI tests on an android API 19 and have been struggling to figure out why the screenshot code fails on bitrise but works locally. After much searching, I have a strong lead but need some help finishing this out.
i run the spoon command using fastlane locally, which runs the test on any booted emulators - i use genymotion mostly, and it worked on API 19 . in bitrise i run the same fastlane command but the emulator is different since its created using avd command. locally i dont have the same android targets atm. i will give the bitrise docker a try!
Here's the board. I originally designed it so the Pi could plug right into it but got the orientation of the connector wrong. With this design the Pi is connected via a ribbon cable. Inspired by the GUS, there is a pin header with all ISA lines present, which helps with connecting a logic analyzer or adding any bodges (which I've been lucky to not need so far).
Status
Currently working:
- Port IO implemented. This limits what programs can actually play audio. I've been using CapaMOD as it can be forced to use system timers instead of the GUS's and also be forced to use port IO for sample uploading.
- Sound output over the Pi's analog headphone jack using PWM
- Resampling for channel counts >14 voices
Probable:
- Address decoding in hardware, perhaps using a PAL. This will free up a lot of GPIO pins!
- Proper directional bus transceivers for better bus signal integrity
- General purpose FIQ pin with OR of all bus signals we need to react quickly to (IOR, IOW, TC) in case polling is problematic
My time to work on this is relatively limited given that I have a family and a full-time day job as a software engineer, but I've made pretty steady progress on things so far. If anyone is wanting to help out and contribute to this project, I'd greatly appreciate it. It's my intention that this is an open project!
I hope it might eventually blossom into a general purpose ISA to Pi adapter software defined multi sound card implementation, but even having "only" (does not seem like the right word here) full, accurate GUS support will still be fantastic .
It includes some useful things like power and reset signaling. I definitely would like to see a complete ISA-to-PI reference design utilizing as much as we can on the ISA bus for quick emulation prototyping.
I love how it orchestrates various existing open works together, along with this author's own not-inconsiderable work, to reach a goal (arguably) greater than the sum of it's parts. These are the best projects.
Since you are going to do hardware address decoding, I suggest an option to also decode ports used by SB16 and (intelligent mode) MPU401 as well (+one extra OPL) . That way the software could later evolve for one perfect single card sound solution.
Yes, it's fast enough, amazingly. It took some discussion on Twitter with of Claude Schwarz of the PiStorm 68K emulator project to make me believe it was possible! And that runs on Linux, not even bare metal.
The RP2040 is really attractive. The PIO is great and you can actually buy a Pi Pico without relying on stock notification bots or buying from a scalper. I dismissed it as an option due to the RAM and was worried that PSRAM wouldn't be fast enough but maybe it actually is. I also was worried about taking up GPIO pins for SPI for the PSRAM, but if I do hardware address decoding that is probably fine. I should get one and experiment, but my main focus for right now is getting accurate GUS emulation on a Pi 3.
I was following you on Mastodon and Twitter, and am really eager to see the next stages, including the CM4 support! I am also interested in how far people will push the Pico -- My guess would be that it would be pretty good at least for OPL2 emulation. Didn't even know you could attach more RAM to it!
not only 'having the OPL2 emulation', as already existing emulators ran at 0.3 to 1x of realtime utilizing 100% of overclocked pico CPU, but rewriting one based on how real hardware operates -doom/sound.html:
Around that time, I read some more about the OPL2 internals, and realized that the real chip produced its output using simple integer math with no multiplies via canny use of logarithms and lookup tables.
If you are using an Android phone, then I recommend a telescopic controller like the GameSir X2. This USB-C controller will wrap around the phone and provide a more seamless experience than clipping a controller to your phone. This controller also has a power passthrough, so you can charge the phone while playing (sadly the USB-C passthrough does not support video out).
Another important aspect of retro gaming is to build your ROM library. Here is a general list of systems that can be played on Android. Those noted with an asterix cannot play every game at full speed, and so performance may vary. For PS2 and GameCube on lower-end Android devices, I recommend getting PAL region ROMs, because they cap out at 50Hz which will give you better performance than struggling to reach the standard 60Hz found in NTSC region ROMs. ROM files are copyrighted and will not be shared on this website.
Additionally, an important component of a ROM library is maintaining BIOS files. BIOS files are system files necessary for some emulators (GBA, Sega CD, or PS1/PS2), and are helpful in improving accuracy with other systems. These files are copyrighted so you are on your own to find them, but a quick search for a RetroArch bios pack should get you on your way. Note that PS2 BIOS files can be easily dumped from your PS2, or you will need to find them elsewhere. Here is more information about BIOS files.
When building your ROM library, another handy trick is to compress your files to save on storage space. This guide will walk you through how to compress many of the CD-based systems PlayStation, Sega CD, Saturn, 3DO, Dreamcast, Jaguar, and TurboGrafx-CD (PC Engine CD).
One other note to make: plugging the SD card directly into your PC to transfer files will give you much greater transfer speeds, about 4x the speed of USB file transfers. So I recommend removing the SD card and plugging it into your computer whenever you have a large batch of files to transfer; USB transfer works fine in a pinch for smaller transfers.
There is a staggering amount of frontend options available for Android devices. Here is a quick summary of some of the most popular options, and the pros and cons of each. Personally, I would recommend trying some of the free options like Daijisho, ATV Launcher, LaunchBox (trial version), DIG, and/or Pegasus, and see if one of those are a good fit for your play style before you shell out money on something you may or may not like.
Arc Browser is a paid ($8.50) app that is similar to DIG in its feel, and Reset Collection in its setup. It does have an active development community within Discord and a comprehensive website that can walk you through some of its customization options. You have a choice of classic and modern UI examples within the frontend, and the app seems particularly designed to be used with a controller, which is great for Android-based handheld consoles.
RetroArch is a kitchen-sink emulation program available on a variety of platforms, including Android. RetroArch can play dozens of emulated systems while standardizing options like hotkeys, controls, screen settings, and more. The platform is uniquely challenging to set up, and so for that reason I created a standalone RetroArch starter guide. So when setting it up, I recommend following the guide to get oriented.
Duckstation is a powerful PS1 emulator that is more accurate than the PCSX-ReARMed RetroArch core. There are also Duckstation and Swanstation RetroArch cores, which work well. The standalone Duckstation emulator requires more performance power than the RetroArch core, so depending on your device, you may want to use RetroArch instead. Some have reported that ePSXe runs better on lower-end Android devices, so if Duckstation is giving you a hard time, maybe try that one too. Duckstation is available in the Google Play Store for free.
Under App Settings, not a lot needs to be changed here. I recommend going to the Enhancements section and adjusting the Resolution Scale depending on how much you want to upscale your 3D graphics. For reference, 3x is 720p and 5x is 1080p. Also in App Settings > Enhancements, turn ON the PGXP Geometry Correction to reduce wobbly polygons; this may negatively affect performance so you may have to adjust as needed.
Recommended file types: Duckstation supports .bin/.cue, .iso, .img, .chd, .pbp, and .m3u file types. I recommend converting your bin/cue and iso files to .chd to save on file space, and using .m3u files or .pbp files for multi-disc games. You can learn how to do that by reading this guide.
This app is the best Nintendo 64 emulator available on Android, and is in active development. There is a free version as well as a paid version ($4) that removes ads, and also provides cloud saving and netplay features.
To improve the navigation experience, go into Settings > Input > Show in-game menu > When slide gesture is used. Now, you can swipe from the left side of the screen to bring up the Mupen64 side panel when in a game, to easily save your game, exit, etc.
3a8082e126