Jump to content
IGNORED

Colleen: Android emulator


Philsan

Recommended Posts

  • 2 weeks later...

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
Link to comment
Share on other sites

  • 1 month later...

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.

 

 

 

 

 

 

Link to comment
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.

Link to comment
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
Link to comment
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.

Link to comment
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.

Link to comment
Share on other sites

  • 5 months later...

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.

Link to comment
Share on other sites

  • 4 weeks later...
  • 1 month later...

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
Link to comment
Share on other sites

  • 9 months later...

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.

Edited by Bill Lange
Link to comment
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. :-(

Link to comment
Share on other sites

  • 5 months later...

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 7
Link to comment
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!

Link to comment
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 6
Link to comment
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
Link to comment
Share on other sites

  • 4 weeks later...

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 6
Link to comment
Share on other sites

  • 1 month later...

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.

Link to comment
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...