[NEW] Speccy for Android Released

fmsfms
edited March 2015 in Emulators
Hello, All!

A while ago, I have released the Android version of Speccy, my ZX Spectrum emulator. It emulates Spectrum 16k, 48k, 128k, +2, +2A, +3, Timex TC2048, TS2068, and the Russian Pentagon and Scorpion clones (including special screen modes and TR-DOS).

Get it for free from Android Market:
http://market.android.com/details?id=com.fms.speccy

The instructions and tips on running Speccy-Android can be found here:
http://fms.komkon.org/EmuAndroid/
http://fms.komkon.org/Speccy/

As the Android port of Speccy is still pretty new, I am looking for bug reports and suggestions. Please, leave them in this thread.

Full list of Speccy features follows:
  • Supported tape images: *.tap, *.tzx
  • Supported snapshots: *.sna, *.z80 (versions 1-3).
  • Supported disk images: *.trd, *.scl, *.dsk (CPCEMU format), *.fdi,
  • Other loadable files: screen dumps (*.scr) and cheat lists (*.pok)
  • Can save music (including beeper) to MIDI files.
  • Emulated joysticks: Cursor, Protek, AGF, Kempston, Fuller, Interface II
  • Emulated mice: Kempston, AMX
  • Emulated printers: ZX Printer, Timex TS2040, Alphacom32
  • Emulated audio: 128k and Fuller AY8910 PSGs
  • Other devices: Multiface, BetaDisk/TR-DOS, Interface I, DISCiPLE, PlusD
  • Built-in debugger
  • Simulated TV scanlines
  • Video image interpolation
  • Touch screen virtual keyboard
  • Touch screen virtual joystick
  • Accelerometer support for joystick control

Have fun!
Post edited by fms on
«13456713

Comments

  • edited September 2011
    fms wrote: »
    Hello, All!

    A while ago, I have released the Android version of Speccy, my ZX Spectrum emulator. It emulates Spectrum 16k, 48k, 128k, +2, +2A, +3, Timex TC2048, TS2068, and the Russian Pentagon and Scorpion clones (including special screen modes and TR-DOS).

    Get it for free from Android Market:
    http://market.android.com/details?id=com.fms.speccy

    The instructions and tips on running Speccy-Android can be found here:
    http://fms.komkon.org/EmuAndroid/
    http://fms.komkon.org/Speccy/

    As the Android port of Speccy is still pretty new, I am looking for bug reports and suggestions. Please, leave them in this thread.

    Full list of Speccy features follows:
    • Supported tape images: *.tap, *.tzx
    • Supported snapshots: *.sna, *.z80 (versions 1-3).
    • Supported disk images: *.trd, *.scl, *.dsk (CPCEMU format), *.fdi,
    • Other loadable files: screen dumps (*.scr) and cheat lists (*.pok)
    • Can save music (including beeper) to MIDI files.
    • Emulated joysticks: Cursor, Protek, AGF, Kempston, Fuller, Interface II
    • Emulated mice: Kempston, AMX
    • Emulated printers: ZX Printer, Timex TS2040, Alphacom32
    • Emulated audio: 128k and Fuller AY8910 PSGs
    • Other devices: Multiface, BetaDisk/TR-DOS, Interface I, DISCiPLE, PlusD
    • Built-in debugger
    • Simulated TV scanlines
    • Video image interpolation
    • Touch screen virtual keyboard
    • Touch screen virtual joystick
    • Accelerometer support for joystick control

    Have fun!

    I originally purchased your emulator many years back when you released it for the Nokia N95 (Symbian S60 3rd Edition). Great to still see your out their working on it. I currently use Marvin on Android, but will check out Speccy later this evening.

    Thanks for sharing!
  • fmsfms
    edited October 2011
    Hello again!

    Just updated the Speccy-Android emulator to version 1.7.7. The new version will automatically save state on exit so that you can restart from the point where you have left off. I also changed the virtual joystick layout a little bit, to make fire buttons more comfortable. Finally, due to many requests, I am releasing the ad-free version of Speccy-Android. You can get it from

    http://market.android.com/details?id=com.fms.speccy.deluxe

    The free, ad-supported version is still available at

    http://market.android.com/details?id=com.fms.speccy

    Please, do not hesitate to report any bugs you have found or request features in this thread. Also, do not forget to rate the apps on the Market, every positive voice counts :)

    Have fun!
  • edited October 2011
    Hercules wrote: »
    I originally purchased your emulator many years back when you released it for the Nokia N95 (Symbian S60 3rd Edition).

    So did I, but for my beloved N73, that alas! I lost some years ago. Haven't bought a Symbian phone since and now never will...
  • edited October 2011
    Yeah, My Galaxy Tab runs Manic Miner great...

    And probably some much less important stuff involving music and Facebook as well, but i'm sure i will look at that eventually :-D

    Thanks again!
  • edited October 2011
    Liberty Tab over here (same as Acer Iconia 500) and I have a weird problem with a USB joypad (Sega USB pad with 6 face buttons, two shoulders)
    With Speccy and also Marvin, when I press A, B or C the applications either go back in their menus or crash/quit if they're at the top level. X seems to fire just fine.
    Any idea why? Can it be changed? Not sure I really want a magic quit button on the most used buttons on the joypad.
  • edited October 2011
    Nice first version. I have found a few bugs though:-

    1. I tried loading the Cobra.tzx.zip from WoS (the first one, 47951 byte long zip file). After loading the second block it stops and displays a Z80 Debugger (stopped at address 0x5800) and I can't figure out how to make it continue loading the game. The Menu overlay button at the top right of the screen doesn't seem to do anything with the debugger displayed.

    2. The beeper output is very distorted/noisy. Even booting into 48K mode and doing a BEEP 1,1 produces a scratchy/distorted noise. Likewise the loading noise is heavily distorted when loading a TZX.

    3. Tilt Joystick mode is a very nice idea, but it doesn't work properly for me. With cursor joystick enabled. Tilting Down gives 8, Up gives 5, Left gives 6 and Right gives 7.

    4. If I'm holding the tablet in landscape mode and hit "Start without opening a file", the emulation starts up fine. If I'm holding it in portrait mode and do the same thing, the "Browsing..." screen briefly rotates to landscape mode, then back to portrait and the emulation doesn't start.

    5. Possibly this is intentional, but if I start in Landscape mode and rotate to portrait with the emulator running. Nothing happens - the display stays in landscape.

    6. Every time I start the emulator it tells me I need to "Click the advert at least once" which fires up the browser and takes me to a site I have no interest in. I understand the desire for ad revenue, but isn't it enough that I look at the adverts? I shouldn't be forced to click-through on adverts for products that I have no interest in at all.

    This is all on a Motorola Xoom running Android 3.2. Hope that's of some use!
  • edited October 2011
    Another one... :)

    The extended keyboard keys such as comma, full-stop, semi-colon, equals, etc, all produce an unshifted zero character when pressed.
  • fmsfms
    edited October 2011
    Vertigo wrote: »
    Liberty Tab over here (same as Acer Iconia 500) and I have a weird problem with a USB joypad (Sega USB pad with 6 face buttons, two shoulders) With Speccy and also Marvin, when I press A, B or C the applications either go back in their menus or crash/quit if they're at the top level. X seems to fire just fine.
    I suspect it is more of a problem with the joypad itself than with the software: sounds like it is generating non-standard key codes. Please, give me the make and model name of that USB joypad of yours and I will see what can be done to support it.
  • fmsfms
    edited October 2011
    ccowley wrote: »
    The extended keyboard keys such as comma, full-stop, semi-colon, equals, etc, all produce an unshifted zero character when pressed.
    The real ZX Spectrum keyboard has none of these keys, so Speccy maps them to the joystick FIRE button. The FIRE button is equivalent to the [0] key in Cursor Joystick, hence the effect you are observing.
  • fmsfms
    edited October 2011
    ccowley wrote: »
    1. I tried loading the Cobra.tzx.zip from WoS (the first one, 47951 byte long zip file). After loading the second block it stops and displays a Z80 Debugger (stopped at address 0x5800) and I can't figure out how to make it continue loading the game. The Menu overlay button at the top right of the screen doesn't seem to do anything with the debugger displayed.
    Sounds like an emulation problem with this particular game. You can make debugger proceed by pressing [C] on the virtual keyboard (or the real one for that matter).
    2. The beeper output is very distorted/noisy. Even booting into 48K mode and doing a BEEP 1,1 produces a scratchy/distorted noise. Likewise the loading noise is heavily distorted when loading a TZX.
    Try increasing audio latency in the settings, see if it helps any. To be frank, the beeper has been somewhat noisy in the original hardware as well :)
    3. Tilt Joystick mode is a very nice idea, but it doesn't work properly for me. With cursor joystick enabled. Tilting Down gives 8, Up gives 5, Left gives 6 and Right gives 7.
    Yes, the accelerometer appears to be rotated by 90 degrees on some devices. I do not yet know why, working on it.
    4. If I'm holding the tablet in landscape mode and hit "Start without opening a file", the emulation starts up fine. If I'm holding it in portrait mode and do the same thing, the "Browsing..." screen briefly rotates to landscape mode, then back to portrait and the emulation doesn't start.
    Does not happen to me here, on the HTC hardware. Will need an "adb logcat" or DDMS output from you to see what is going on.
    5. Possibly this is intentional, but if I start in Landscape mode and rotate to portrait with the emulator running. Nothing happens - the display stays in landscape.
    It is intentional, as the original ZX Spectrum was running in the landscape mode of sorts :)
    6. Every time I start the emulator it tells me I need to "Click the advert at least once"
    Not every time.
    I understand the desire for ad revenue, but isn't it enough that I look at the adverts?
    No, because they are no longer paying for that. If you do not like the ads, pay a few peanuts for the ad-free Speccy Deluxe version.
    This is all on a Motorola Xoom running Android 3.2. Hope that's of some use!
    Noted.
  • edited October 2011
    fms wrote: »
    Sounds like an emulation problem with this particular game. You can make debugger proceed by pressing [C] on the virtual keyboard (or the real one for that matter).
    Cheers. Pressing 'C' does force the debugger to continue but the loader doesn't work. I tried the same TZX on SpecEmu and fuse to rule out any issues in the tape image so I guess it's a CPU emulation issue.
    Try increasing audio latency in the settings, see if it helps any. To be frank, the beeper has been somewhat noisy in the original hardware as well :)
    It was on the (default?) 250ms. I increased it to the maximum 300ms and it made no difference. There's definitely something screwy with it on my hardware - BEEP should produce something approximating an even, square-ish wave, but this sound is very distorted and uneven.

    Does not happen to me here, on the HTC hardware. Will need an "adb logcat" or DDMS output from you to see what is going on.
    OK. I have a 135KB logcat for you (I tried starting it in portrait mode twice in the same session). Is there somewhere I can e-mail it to? It's a little bit hefty to post here I guess.
    No, because they are no longer paying for that. If you do not like the ads, pay a few peanuts for the ad-free Speccy Deluxe version.
    Really? Sucks that they don't give you any revenue for actually giving up some screen real-estate to display adverts. I can see the whole AdMob concept falling apart if they stick with that model, as nobody wants to be forced to click-though on adverts they have no interest in. Especially in a non-Windowed environment like Android. I think Adsense pays for impressions. If/when it's running properly on my Xoom, I may well end up buying it (only the second Android app I will ever have paid for - and the other one was 90p!).
  • fmsfms
    edited October 2011
    ccowley wrote: »
    Cheers. Pressing 'C' does force the debugger to continue but the loader doesn't work. I tried the same TZX on SpecEmu and fuse to rule out any issues in the tape image so I guess it's a CPU emulation issue.
    Probably has something to do with some hardware trick used in the loader. It may be easier to simply use a .Z80 or .SNA snapshot for now.
    It was on the (defualt?) 250ms. I increased it to the maximum 300ms and it made no difference. There's definitely something screwy with it on my hardware - BEEP should produce something approximating an even, square-ish wave, but this sound is very distorted and uneven.
    It should, if all the timings are absolutely correct. I suppose not all of them are. Bring the audio latency back to 100ms or so (it should work nicely on the later version), then go into the old-skool Speccy menu and enable "Use Melodic Sound" there. See if you like it better.
    OK. I have a 135KB logcat for you (I tried starting it in portrait mode twice in the same session). Is there somewhere I can e-mail it to? It's a little bit hefty to post here I guess.
    Email to luarvique at gmail.
  • edited October 2011
    Loading Rainbow Islands tzx in 128k mode, the 2nd level data block (2nd set after the loading screen blanks) shows red and blue leader noise only over and over.
    In 48k mode, the title screen is corrupt.

    Investigating the joypad thing when I've got time. It's one of these.

    (Packard Bell Liberty tab G100 which is a repackaged Acer Iconia A500)
  • fmsfms
    edited October 2011
    Vertigo wrote: »
    Loading Rainbow Islands tzx in 128k mode, the 2nd level data block (2nd set after the loading screen blanks) shows red and blue leader noise only over and over.
    I think you may need to stop the tape (using the menu) right after the 1st level has been loaded and start it for the 2nd level: this way, the "tape player" will not skip over the second block. If you have not managed to do that, rewind the tape when loading the second level.
    Investigating the joypad thing when I've got time. It's one of these.
    Ok, thanks. Will look up how one is supposed to use these on Android.
  • fmsfms
    edited October 2011
    Hi, All!

    A new version of Speccy-Android (1.7.10) is now available from the Android Market.

    https://market.android.com/details?id=com.fms.speccy

    It should fix a few things reported here:
    ccowley wrote: »
    3. Tilt Joystick mode is a very nice idea, but it doesn't work properly for me. With cursor joystick enabled. Tilting Down gives 8, Up gives 5, Left gives 6 and Right gives 7.

    4. If I'm holding the tablet in landscape mode and hit "Start without opening a file", the emulation starts up fine. If I'm holding it in portrait mode and do the same thing, the "Browsing..." screen briefly rotates to landscape mode, then back to portrait and the emulation doesn't start.

    These two should be fixed now, hopefully.

    Also looking for people with Galaxy S2s: looks like this device has some serious issues running my stuff and I cannot figure out why.
  • edited October 2011
    fms wrote: »
    These two should be fixed now, hopefully.
    Indeed they are. Nice work, thanks.
  • edited October 2011
    :( I have Android 2.1.... I can't use this emulator.... please you can make a version for android 2.1? thanks
  • fmsfms
    edited October 2011
    jevilon wrote: »
    :( I have Android 2.1.... I can't use this emulator.... please you can make a version for android 2.1? thanks
    I would, but the native code support in Android 2.1 is insufficient to build Speccy =( Your best bet would be to upgrade to 2.2, which is a good idea anyway.
  • edited October 2011
    It's a good idea, but... my mobile don't have updates... :(
  • fmsfms
    edited November 2011
    Hello, All!

    A new version of Speccy-Android is out:

    https://market.android.com/details?id=com.fms.speccy (free, with ads)
    https://market.android.com/details?id=com.fms.speccy.deluxe (ad-free)

    The main change in this version is the experimental portrait mode support. In order to enable it, press the Android MENU button, go to Settings->Video->Orientation and choose the desired screen orientation.

    As many people would like to quickly switch between virtual keyboard and joystick, I have added an on-screen button to toggle keyboard on and off. Hope you will find this change useful.

    The fast-forwarding feature can now be invoked with Android's dedicated SEARCH button. As pretty much every Android device has this button, you should now be able to skip over slow intro sequences easily.

    I have also optimized assembler rendering routines for portrait mode resolutions and fixed crashes on Samsung Galaxy S2.

    Enjoy!

    PS: If you like Speccy-Android, please, do not forget to vote for it on the Android Market. Thanks!
  • edited November 2011
    fms wrote: »
    The fast-forwarding feature can now be invoked with Android's dedicated SEARCH button. As pretty much every Android device has this button, you should now be able to skip over slow intro sequences easily.
    Just FYI, none of the android tablets that are designed to run honeycomb or later (i.e. the tablets that have the marketplace app) have a search button, with the exception of the Eee transformer that has a dockable hardware keyboard.
  • fmsfms
    edited November 2011
    ccowley wrote: »
    Just FYI, none of the android tablets that are designed to run honeycomb or later (i.e. the tablets that have the marketplace app) have a search button, with the exception of the Eee transformer that has a dockable hardware keyboard.
    Bad luck. Fortunately, Ice Cream Sandwich devices do seem to include a search button.
  • edited November 2011
    fms wrote: »
    Bad luck. Fortunately, Ice Cream Sandwich devices do seem to include a search button.
    Are you sure about that?
  • fmsfms
    edited November 2011
    ccowley wrote: »
    Umgh... Oh well, then I will just have to find some other way to invoke fast-forwarding. Maybe with circular finger motions in clockwise direction? :)
  • edited November 2011
    Hah! That would be cool :)
  • edited November 2011
    Amazing to think that we were once clamouring for emulators for the PC, and now you can get them for your phone.
  • edited November 2011
    JohnnyJman wrote: »
    Amazing to think that we were once clamouring for emulators for the PC, and now you can get them for your phone.

    You wanna see Mame4Droid - now THAT is SPECIAL ;)
  • edited November 2011
    I wonder if this would work with the new budget Samsung Galaxy Mini android phone. It's under ?100 and pays for it with a resolution of 320x240, but wouldn't that be enough to play Speccy games using this app?
    THE RETRO GAMER IRC CHATROOM. EVERY SUNDAY AT 9PM BST. LOG ON USING THE LINK BELOW:
    https://discordapp.com/invite/cZt59EQ
  • edited November 2011
    Spector wrote: »
    I wonder if this would work with the new budget Samsung Galaxy Mini android phone. It's under ?100 and pays for it with a resolution of 320x240, but wouldn't that be enough to play Speccy games using this app?
    The Xperia X10 Mini Pro I had before I upgradedhas similar screen dimensions and both speccy emulators i've used work fine on smaller resolutions, so I can't see why it wouldn't work on the Galaxy Mini...
  • fmsfms
    edited November 2011
    Spector wrote: »
    I wonder if this would work with the new budget Samsung Galaxy Mini android phone. It's under ?100 and pays for it with a resolution of 320x240, but wouldn't that be enough to play Speccy games using this app?
    In theory, Speccy should be able to handle 320x240 (and even 240x320). You may lose virtual keyboard though. If you have got a 320x240 Android phone, give Speccy a try and report your experience here.
Sign In or Register to comment.