Jump to content
Philsan

Colleen: Android emulator

Recommended Posts

Hi Y'all

 

I heard back from Tom Hudson :)

 

Fortunately, the Touchscreen interface is quite simple! Once you activate the Touchscreen Mode in the Preferences menu of the Colleen emulator, the Paddle(0) gives the X and the Paddle(1) gives the Y values of the touched location. In Tom's Planetary Defense program, he added extra codes to calibrate the screen for mapping the Touchscreen locations to the required cursor X,Y coordinates for his program.

 

Lastly, the paddle trigger, PTrig(0) is used for sensing when the screen is touched.

 

I just want to give everyone this quick update so that you don't have to wait for me to get my sample Simon! program working before exploring out on your own.

 

Hayden

Edited by atx4us
  • Like 2

Share this post


Link to post
Share on other sites

Hi,

 

I am having trouble to get my own (WIP) game running. To exclude any memory problems maybe someone can help out.

This XEX (an older build) loads and plays well:

Segment: $a700 - $a8fc. Lenght:  1fd (   509)
Segment: $a100 - $a1a7. Lenght:   a8 (   168)
INIT at: a100
Segment: $4000 - $60ec. Lenght: 20ed (  8429)
INIT at: a11b
Segment: $8dc0 - $96ff. Lenght:  940 (  2368)
Segment: $2000 - $83c1. Lenght: 63c2 ( 25538)
RUN at:  2200
Segment: $b000 - $bfff. Lenght: 1000 (  4096)

A more recent build with the following segments gives me "Cannot boot image":

Segment: $a700 - $a8fc. Lenght:  1fd (   509)
Segment: $a300 - $a3e2. Lenght:   e3 (   227)
INIT at: a300
Segment: $4000 - $6c9e. Lenght: 2c9f ( 11423)
INIT at: a31b
Segment: $2000 - $85b9. Lenght: 65ba ( 26042)
RUN at:  2200

I am using "Package version: 3.0" on a S7 edge.

Any help appreciated. I am not a heavy user of the emu, however, when showing my mates the current state of teh game (via Slack) it would be awesome if they can check it out on there mobiles real quick.

 

 

 

 

 

 

Share this post


Link to post
Share on other sites

"Cannot boot image" should happen only if the XEX file is malformed (ie. it does not start with $ffff) or if the file cannot be accessed. Colleen can only access files located in the device's internal memory, not on an SD card - maybe that's the problem.

 

Anyway, try loading the XEX in the desktop version of Atari800 - the problem should repeat here as well, and Atari800 should write the cause of the error in its console log.

Share this post


Link to post
Share on other sites

"Cannot boot image" should happen only if the XEX file is malformed (ie. it does not start with $ffff) or if the file cannot be accessed. Colleen can only access files located in the device's internal memory, not on an SD card - maybe that's the problem.

 

That explains why a lot of games don't work for me.

 

Wish more Android apps were SD-card friendly. I only have so much space in memory, but plenty of SD card space.

  • Like 1

Share this post


Link to post
Share on other sites

Has USB joystick been added to the emulator? None of my cellphones support USB host mode, but all of my tablets seem to have it native. I've hooked up various keyboards, mouse and thumb drives. Seems like it would be a natural to add a joystick.

Share this post


Link to post
Share on other sites

"Cannot boot image" should happen only if the XEX file is malformed (ie. it does not start with $ffff) or if the file cannot be accessed. Colleen can only access files located in the device's internal memory, not on an SD card - maybe that's the problem.

 

Anyway, try loading the XEX in the desktop version of Atari800 - the problem should repeat here as well, and Atari800 should write the cause of the error in its console log.

 

atari800 (on Linux) is my test emulator while developing. So it runs there fo' sure ;)

 

It is (most probably) not malformed. The listing above was generated by my own (simple) COM-file analyser / segment extractor.

I read the documentation of the ATARI OS file format to hack it together. However, I will take a closer look at this in the next days.

 

To be sure, I will send you exactly the same link I sent my mates (maybe Dropbox does something fancy?). All other versions I distributed via my OwnCloud which is down till I find the motivation to get it up and running again.

Share this post


Link to post
Share on other sites

That explains why a lot of games don't work for me.

 

Wish more Android apps were SD-card friendly. I only have so much space in memory, but plenty of SD card space.

I'm using Android Kitkat and have no problems with .atr files located on the external microSD card. The caveat is that the Atari programs cannot write to the .atr files that are located on the external microSD card (such as updating the high scores data to the .atr file) due to Android's well documented file write restrictions. As a compromise, I store the .atr files that must update the disk images on the internal memory and most of the other .atr files on the external microSD card.

Share this post


Link to post
Share on other sites

This emulator is a colossal pain in the patoot to run on an Android TV. Tried to sideload it, but accessing the menu after choosing a BIOS folder is impossible. For some annoying reason Android emulator designers force you to access the settings after a game loads, not before, and that doesn't always work with Android TVs.

Share this post


Link to post
Share on other sites

No copy/paste? So I have to type in programs? Also, what's the answer to the start, select, option keys?

Share this post


Link to post
Share on other sites

So, what are the minimum specs to run this effectively?

Dunno, but I had it running on an HTC Desire Z at 100% speed.

 

support stereo emulation ?

Nope.

 

any way to map the start/help/reset buttons to a gamepad?

Nope.

 

No copy/paste? So I have to type in programs?

Yup. Edited by Kr0tki

Share this post


Link to post
Share on other sites

Also, what's the answer to the start, select, option keys?

 

 

Tap the top right of the screen and they'll appear.

Share this post


Link to post
Share on other sites

I've been using Colleen on my Google Nexus 7 Android device for the last few days. It doesn't seem like any of the ATARI 8-bit CTRL keys work from my Arteck Bluetooth Keyboard.

 

I'm going to take a look at the Java source and see if I can figure out if the CTRL keys are implemented.

 

I haven't had good luck with Colleen with hardware keyboards. I was hoping it would work on my Chromebook, but the keyboard doesn't. :-(

Share this post


Link to post
Share on other sites

I figured out just enough about Android development to add support for the missing key mappings in Colleen, finally making it useful for on-the-go 8-bit development. Only tested against the Hacker's Keyboard app, but hopefully it will also work with the AnyKey Keyboard app and physical keyboards. Here are the new Android to Atari key mappings:

Left Ctrl - Ctrl
Ins - Insert character (Ctrl+>)
Shift+Ins - Insert line (Shift+>)
Del - Delete character (Ctrl+Back S)
Shift+Del - Delete line (Shift+Back S)
Home - Clear (Ctrl+< or Shift+<)
Esc - Esc
Brk - Break
NumL - Caps (added because the Hacker's Keyboard won't recognize Shift+` so there was no way to re-engage uppercase mode)

I also added preferences to shift the screen down in portrait mode (so the screen and console keys don't end up behind the status/action bars when the keyboard is up) and to control how quickly (if at all) the console key overlay disappears. Oh, and made the labels on the console keys a bit more readable and fixed a crash when backing out of the file selector without selecting anything.

Patches have been posted on the Atari800 Visual SourceHub for Business 365 Cloud Services Edition (née GitHub) page, but in the meantime, here's an apk. It's built against the new 4.0 core and includes my patches. I'm not a real Android developer, so it's not signed and all the usual caveats about sideloading random apks apply. (And don't ask about stereo POKEY support...)

 

post-63343-0-50058000-1533839648.jpg post-63343-0-03263300-1533839654.jpg

 

colleen-hack1-debug.apk.zip

  • Like 6

Share this post


Link to post
Share on other sites

I figured out just enough about Android development to add support for the missing key mappings in Colleen, finally making it useful for on-the-go 8-bit development. Only tested against the Hacker's Keyboard app, but hopefully it will also work with the AnyKey Keyboard app and physical keyboards. Here are the new Android to Atari key mappings:

 

Left Ctrl - Ctrl

Ins - Insert character (Ctrl+>)

Shift+Ins - Insert line (Shift+>)

Del - Delete character (Ctrl+Back S)

Shift+Del - Delete line (Shift+Back S)

Home - Clear (Ctrl+< or Shift+<)

Esc - Esc

Brk - Break

NumL - Caps (added because the Hacker's Keyboard won't recognize Shift+` so there was no way to re-engage uppercase mode)

 

I also added preferences to shift the screen down in portrait mode (so the screen and console keys don't end up behind the status/action bars when the keyboard is up) and to control how quickly (if at all) the console key overlay disappears. Oh, and made the labels on the console keys a bit more readable and fixed a crash when backing out of the file selector without selecting anything.

 

Patches have been posted on the Atari800 Visual SourceHub for Business 365 Cloud Services Edition (née GitHub) page, but in the meantime, here's an apk. It's built against the new 4.0 core and includes my patches. I'm not a real Android developer, so it's not signed and all the usual caveats about sideloading random apks apply. (And don't ask about stereo POKEY support...)

 

attachicon.gifcolleen1-small.jpg attachicon.gifcolleen2-small.jpg

 

attachicon.gifcolleen-hack1-debug.apk.zip

 

 

I can't wait to test it on my Chromebook!

Share this post


Link to post
Share on other sites

(And don't ask about stereo POKEY support...)

 

I noticed that I had made an extra copy of the console overlay fade-out setting under the Sound preferences, so while I was in there fixing that I figured I might as well add stereo (dual POKEY) support. Patch has been sent upstream and here's another (still unsigned!) apk.

 

post-63343-0-58379700-1533845236.png post-63343-0-24468600-1533846307.jpg

 

colleen-hack2-debug.apk.zip

Edited by slaker
  • Like 5

Share this post


Link to post
Share on other sites

I hate to admit, but I do not get; Android programming. All I want do do is to make an app that can download a .zip from my FIXED LOCATION on Dropbox and unzip it to a specific folder.

 

I simply want the user to be able to click an app of my fililinked page and be able to get my custom build of Kodi installed.

 

Please PM me if you can help with this simple project. Thanx.

 

SHIT: Edit: Typo.

Edited by Kyle22

Share this post


Link to post
Share on other sites

I realized there were still several key combinations needed for the Action! editor that couldn't be typed on the Hacker's Keyboard, so I added these additional Android to Atari mappings (Action! editor functions in parentheses):

Ctrl+Shift+Del - Ctrl+Shift+Back_S (join to previous line)
Shift+Left - Ctrl+Shift+< (move to beginning of line)
Shift+Right - Ctrl+Shift+> (move to end of line)
F11 - Ctrl+Shift+1 (change to window 1)
F12 - Ctrl+Shift+2 (create/change to window 2)

I believe all the Action! editor commands are now usable on Colleen.

After picking up a small Bluetooth keyboard, I decided to add mappings for its function keys, similar to the PC port of Atari800. But because I could never remember Atari800's console key mappings ("Which key is Start? F4? F2?"), I used the same ordering that the XE keyboard and Colleen's overlay uses by default:

F1 - Help
F2 - Start
F3 - Select
F4 - Option
F5 - Reset (warmstart)
Shift-F5 - Reset (coldstart)
F7 - Break

I added a preference to switch to the Atari800 ordering in case your fingers are already used to it. Note that while the Start/Select/Option function keys work fine on a Bluetooth keyboard (mine, anyway), they aren't usable on the Hacker's Keyboard because it sends key press/release events in quick succession after a key is touched, so the corresponding bit in the CTIA/GTIA CONSOL register toggles so fast the emulated program usually doesn't see it. (The Help key is usable because it's latched in HELPFG.) Not a big deal because the console key overlay can be used instead.

I sent the patch upstream and built this new (still unsigned) apk. Enjoy.

 

colleen-hack3-debug.apk.zip

  • Like 5

Share this post


Link to post
Share on other sites

I'm using Android Kitkat and have no problems with .atr files located on the external microSD card. The caveat is that the Atari programs cannot write to the .atr files that are located on the external microSD card (such as updating the high scores data to the .atr file) due to Android's well documented file write restrictions. As a compromise, I store the .atr files that must update the disk images on the internal memory and most of the other .atr files on the external microSD card.

This would explain why for example - I can run various versions of Ultima 3 on various emulators on Windows with no problem - but none of these images, on any of these emulators, will work on my Nexus S7 Edge. I think you just gave me a solution that days of troubleshooting have been unable to resolve.

 

The interesting thing is that on at least one emulator - I was able to get the register to update to a scenario disk that was on the SD card - but the emulator hangs at that point and when I reopen the game and change to the scenario disk, it is corrupted.

 

So, it DOES write to the SD card - it just mangles it. Anyhow - I guess I'll look into putting the ROMs into main memory for Ultima 3 and see if that improves my emulator experience on Android.

 

I don't know why I am so intent on getting this particular game to run on Android. Just the principle of the thing at this point, I guess.

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...

  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...