Post Reply 
Running Emu71 on Android
09-11-2018, 11:01 PM (This post was last modified: 09-15-2018 07:37 AM by Didier Lachieze.)
Post: #1
Running Emu71 on Android
Late July there was a discussion about go71b, a 71b emulator for Android. It's pretty good but has some limitations so I've looked for a way to run JFG's excellent Emu71 on Android.
I've been able to run it on my 8" tablet, the display is a bit small but I think it should be fine on a 10“ tablet.

To achieve this there are some prerequisites :
  1. a DOS emulator
  2. a standard keyboard
  3. a file manager
  4. and (optionally) a text editor

DOS emulator : there are several on the play store, I'm using aFreeBox, this is a free port of DOSBox on Android.
[Image: 180912120057683832.png]

Standard keyboard : to use Emu71 it's better to have a PC keyboard, the standard Android keyboard is incomplete and doesn't support the function keys. You may use a USB or a Bluetooth keyboard but I've not tested it. It's simpler to use a dedicated Android keyboard, there is one appropriate for Emu71, it's the Hacker's keyboard. Be sure to follow the installation instructions to activate it on Android.

File manager : You'll need a file manager application to copy the different files for Emu71 in the DOS emulator directory. I'm using File Commander because it's preinstalled on my tablet, but there are plenty on the PlayStore.

Text editor : You'll need to edit at least the emu71.ini config file, you may do it under DOS but I find it easier to do it with an App, I'm using Ted (I removed QuickEdit which requires net access permissions).

Once every app is installed launch aFreeBox, by default it should map C: to your download directory. Press the keyboard icon on the top of the screen and select the Hacker's keyboard to replace the Android keyboard.
Create a "DOS" directory in your download directory, download Emu71 package, unzip it to the DOS directory and configure it as you need.
Now from aFreeBox go to the DOS directory, you should be able to run Emu71.

Here is a screenshot of JFG's pirate rom running on Emu71 on my Sony 8" tablet:
[Image: mini_180912125610452085.png]

Note: there is a bug in the Hacker's keyboard preventing to use the shift key with the function keys, but there is a workaround: instead of using the shift key on the keyboard, press the small lightning and select Shift before pressing the Fn key.
Find all posts by this user
Quote this message in a reply
09-12-2018, 04:13 PM
Post: #2
RE: Running Emu71 on Android
Thanks for sharing!

Wikis are great, Contribute :)
Find all posts by this user
Quote this message in a reply
09-12-2018, 09:17 PM
Post: #3
RE: Running Emu71 on Android
What a great idea!

I use a DOS emulator in my android tablet to run old DOS chess programs and never thought of using for emu 71!

I'm satisfied with Go71, but I cannot use the 41 translator in it, now I'm gonna try with this solution.

Really thanks!

Cheers

JL
Find all posts by this user
Quote this message in a reply
09-12-2018, 09:58 PM
Post: #4
RE: Running Emu71 on Android
.
Hi, Didier:

(09-11-2018 11:01 PM)Didier Lachieze Wrote:  Late July there was a discussion about go71b, a 71b emulator for Android. It's pretty good but has some limitations [...]

I used it extensively on my Samsung tablet while vacationing and though I could concoct various challenges and other programming tasks I found using it quite the chore. Its simulated LCD display looks horrible and it's annoying to read which such large simulated pixels, it frequently hanged for up to 10 seconds or more for no apparent reason (nothing else was running on the tablet which also wasn't connected to any net), and if I tried to reset it using the menu option under "Actions" it would completely lose the simulated RAM and all my 71 programs therein.

Also, it wouldn't remember the options selected no matter what, I had to always set the speed to 128x after each use because it always turned on at its default 1x, which was yet another nuisance. If I left it open all the time, it would nevertheless revert to 1x and other defaults from time to time. I even created and used a timing program to check the speed if some computation was taking too long (and for challenges they usually do) but to no avail as it got lost when RAM was reset.

All in all I could do what I intended to do with go71b while on the move but it was a rather unpleasant experience and I've never used it again since I came back home.

Quote:[...]so I've looked for a way to run JFG's excellent Emu71 on Android.
I've been able to run it on my 8" tablet, the display is a bit small but I think it should be fine on a 10“ tablet.

Excellent ! I'll try and follow your instructions in order to get it running on my Samsung tablet and if it does I'll never use go71b again. Just a few questions:

How about speed ? Does it run at 128x, 64x, 32x, ... ?
Is it possible to configure extra RAM (16 Kb, 64 Kb, 128 Kb) and arbitrary ROMs or are there tablet-imposed limitations over the ones imposed by Emu71 itself ?

Quote:To achieve this there are some prerequisites :
  1. a DOS emulator
  2. a standard keyboard
  3. a file manager
  4. and (optionally) a text editor

Why is a file manager needed ? Simply storing the files in Emu71's directory doesn't work ? If it does, you just connect the tablet to a laptop or access the SD card some other way and put/get the files there using your laptop, right ? I assume the file manager would be needed just for files downloaded from some server but not if they are in your laptop.

Quote:Text editor : You'll need to edit at least the emu71.ini config file, you may do it under DOS but I find it easier to do it with an App, I'm using Quick Edit.

I checked it on google store and it seems that it includes adds and request many permissions which don't seem to be needed for a simple notepad-style app, which I find somewhat suspicious.

That's all. Thank you very much for taking the trouble to share this with the MoHP community, much appreciated . Perhaps this will also result in increased interest in the HP-71B system itself and its awesome computational abilities and extreme ease of use.

Best regards.
V.
.

  
Find All My HP-related Materials here:  Valentin Albillo's HP Collection
 
Visit this user's website Find all posts by this user
Quote this message in a reply
09-13-2018, 12:35 AM
Post: #5
RE: Running Emu71 on Android
(09-11-2018 11:01 PM)Didier Lachieze Wrote:  Late July there was a discussion about go71b, a 71b emulator for Android.
I've been able to load custom ROM images, and all kinds of IRAM configurations seem to work, but I can't get all (emulator) functions to work properly. After some more testing/fiddling/verifying with go71b to narrow some questions, I emailed Olivier just after that thread with those questions, including some issues discussed in the thread.

No reply at all.

I know the email address I am using is an address that used to work (about 1.5 years ago - the address listed for the author) but no idea if these new messages are being received and ignored, or perhaps are not being read. They did not bounce, so I'm confidant they were delivered.

If anyone has been able to reach Olivier recently, could you please PM or email me his email address.

The payment through the Android Play store was processed, but this doesn't really infer much about the author. I really don't want to report Olivier to the Play Store for being unresponsive, but there's no good excuse for not replying at all.

(09-11-2018 11:01 PM)Didier Lachieze Wrote:  It's pretty good but has some limitations so I've looked for a way to run JFG's excellent Emu71 on Android.

Clever idea Didier, thanks for working this out and sharing the details. At last, justification to get an Android tablet.... Big Grin

--Bob Prosperi
Find all posts by this user
Quote this message in a reply
09-13-2018, 05:30 AM
Post: #6
RE: Running Emu71 on Android
Hi Valentin,

Thanks for reporting your experience with go71b. I didn't experience the same issues but I also didn't use it as extensively. I also suspect that some issues may be linked to different Android versions.

(09-12-2018 09:58 PM)Valentin Albillo Wrote:  
Quote:[...]so I've looked for a way to run JFG's excellent Emu71 on Android.
I've been able to run it on my 8" tablet, the display is a bit small but I think it should be fine on a 10“ tablet.

Excellent ! I'll try and follow your instructions in order to get it running on my Samsung tablet and if it does I'll never use go71b again. Just a few questions:

How about speed ? Does it run at 128x, 64x, 32x, ... ?
Is it possible to configure extra RAM (16 Kb, 64 Kb, 128 Kb) and arbitrary ROMs or are there tablet-imposed limitations over the ones imposed by Emu71 itself ?

You can change the speed but it's no as simple as selecting 128x, 64x, 32x, ... See DOSBox Performance .
Once you run Emu71 in DOSBox you can configure it as you want, same as on a PC.

(09-12-2018 09:58 PM)Valentin Albillo Wrote:  Why is a file manager needed ? Simply storing the files in Emu71's directory doesn't work ? If it does, you just connect the tablet to a laptop or access the SD card some other way and put/get the files there using your laptop, right ? I assume the file manager would be needed just for files downloaded from some server but not if they are in your laptop.

Yes of course you can copy directly the files from your laptop but generally you use a tablet when/where you don't have your laptop so if you want to install for ex. a new ROM you just downloaded you'll need a file manager.

(09-12-2018 09:58 PM)Valentin Albillo Wrote:  I checked it on google store and it seems that it includes adds and request many permissions which don't seem to be needed for a simple notepad-style app, which I find somewhat suspicious.

There may be better text editors than QuickEdit but the only permission it needs is access to the storage which is expected. Regarding adds it displays an add when you quit the application, it's a bit annoying so if anybody can suggest an ad-free good text editor I will switch.
Find all posts by this user
Quote this message in a reply
09-13-2018, 10:16 AM
Post: #7
RE: Running Emu71 on Android
(09-13-2018 05:30 AM)Didier Lachieze Wrote:  There may be better text editors than QuickEdit but the only permission it needs is access to the storage which is expected. Regarding adds it displays an add when you quit the application, it's a bit annoying so if anybody can suggest an ad-free good text editor I will switch.

If you can get your head around Vim (and have an external keyboard), you can give that a go. I've used it on a budget HTC with a smaller screen than normal, but it's still usable in landscape mode. That's free - it violates the donateware licence if it's not.

I've also seen mention of Emacs, but this requires something called TermUx to make good use of. It's another possibility, and is most certainly free, if you're happy with the GPL licence.

(Post 281)

Regards, BrickViking
HP-50g |Casio fx-9750G+ |Casio fx-9750GII (SH4a)
Visit this user's website Find all posts by this user
Quote this message in a reply
09-13-2018, 09:43 PM
Post: #8
RE: Running Emu71 on Android
.
Hi, Didier:

(09-13-2018 05:30 AM)Didier Lachieze Wrote:  I didn't experience the same issues but I also didn't use it as extensively. I also suspect that some issues may be linked to different Android versions.

Might be but I'm not that convinced, there's another older Samsung tablet in the house with an earlier Android version and go71b behaves likewise.

Quote:You can change the speed but it's no as simple as selecting 128x, 64x, 32x, ... See DOSBox Performance .

Ok but what speed do you achieve in your particular setup ? Just for instance, how long does it take to execute this from the command line ?

      DESTROY ALL @ SETTIME 0 @ FOR I=1 TO 1000 @ NEXT I @ TIME

At 1x go71b reports a time of about 10 seconds. What times do you get in your Emu71/DOSBox/Android setup ?

Quote:Yes of course you can copy directly the files from your laptop but generally you use a tablet when/where you don't have your laptop [...]

Not my case, I only use a tablet when I'm on the move and/or when I'm vacationing at a location where there's no Internet connectivity at all so I would never be able to download anything, what is already installed in the tablet are the only apps and files I can use, no downloads at all.

Quote:There may be better text editors than QuickEdit but the only permission it needs is access to the storage which is expected.

Not so. Looking at the details in its Google Store page it says it requests the following permissions:

Photos/multimedia/files

      . Read the contents of your USB storage
      . Modify or delete the contents of your USB storage

Storage

      . Read the contents of your USB storage
      . Modify or delete the contents of your USB storage

Other

      . Receive data from Internet
      . View network connections
      . Full network access
      . Prevent device from sleeping


and I think that a simple notepad-like app to just read or write plain text files doesn't need "Full network access" , "View network connections", etc. I also don't want it to "Receive data from the Internet" or to be able to read, modify and/or delete my photos or multimedia files, that has nothing to do with plain text files and the only thing I want it to do is to allow me to create plain text files and to read plain text files already present in the device, period.

That's all for now, thank you very much for your help with go71b which saved my MoHP-related productivity while vacationing, for sharing your Emu71/Android experiences and for replying so thoroughly to my comments and questions.

Best regards.
V.
.

  
Find All My HP-related Materials here:  Valentin Albillo's HP Collection
 
Visit this user's website Find all posts by this user
Quote this message in a reply
09-13-2018, 10:24 PM
Post: #9
RE: Running Emu71 on Android
(09-13-2018 09:43 PM)Valentin Albillo Wrote:  Ok but what speed do you achieve in your particular setup ? Just for instance, how long does it take to execute this from the command line ?

      DESTROY ALL @ SETTIME 0 @ FOR I=1 TO 1000 @ NEXT I @ TIME

At 1x go71b reports a time of about 10 seconds. What times do you get in your Emu71/DOSBox/Android setup ?

With the DOSBox cycles auto mode I get .92s, with cycles set to 10000 I get 1.28s and with cycles set to 45000 (the max) I get .48s.
Note that the time in auto mode can vary, running the test several times I got results between 0.91 and 1.18, it's much more consistent when you set up a specific number of cycles.
So go71b with a time of .07 at x128 is 7 time faster than Emu71 on my tablet.
Find all posts by this user
Quote this message in a reply
09-13-2018, 11:28 PM
Post: #10
RE: Running Emu71 on Android
(09-13-2018 09:43 PM)Valentin Albillo Wrote:  Ok but what speed do you achieve in your particular setup ? Just for instance, how long does it take to execute this from the command line ?

      DESTROY ALL @ SETTIME 0 @ FOR I=1 TO 1000 @ NEXT I @ TIME

At 1x go71b reports a time of about 10 seconds. What times do you get in your Emu71/DOSBox/Android setup ?

FI - As another data point, on my Android Moto Force Z phone, I get:

@ 1X: 9.75
@ 128X: 0.07

So it does seem to scale about linearly.

--Bob Prosperi
Find all posts by this user
Quote this message in a reply
09-14-2018, 02:39 AM
Post: #11
RE: Running Emu71 on Android
Incidentally, this setup works well with a Chromebook, too, same setup stuff.
Find all posts by this user
Quote this message in a reply
09-14-2018, 02:24 PM
Post: #12
RE: Running Emu71 on Android
Hi Valentin,

(09-13-2018 09:43 PM)Valentin Albillo Wrote:  and I think that a simple notepad-like app to just read or write plain text files doesn't need "Full network access" , "View network connections", etc. I also don't want it to "Receive data from the Internet" or to be able to read, modify and/or delete my photos or multimedia files, that has nothing to do with plain text files and the only thing I want it to do is to allow me to create plain text files and to read plain text files already present in the device, period.

I agree with you that an editor does not necessary need network/internet access to do editing only. Network might be required if the editor was not limited to only editing files physically located on the tablet. For example, you might want to edit files in the cloud.

But I am curious how an editor program can be limited to plain text files only. File Editors, by definition, edit files! I use the simple Text Editor TED which is a nice plain text editor. But I can open and edit ANY type file with it. Just checked by opening a JPG and a MP3 file on my tablet.

Bill
Smithville, NJ
Find all posts by this user
Quote this message in a reply
09-14-2018, 09:48 PM
Post: #13
RE: Running Emu71 on Android
.
Hi, everyone:

(09-13-2018 10:24 PM)Didier Lachieze Wrote:  So go71b with a time of .07 at x128 is 7 time faster than Emu71 on my tablet.

A pity. Speed is often of the essence for me and Emu71/DOSBox being 7 times slower than go71b on the same hardware is pretty bad news. Just for instance, one of the challenges I recently explored took many hours to run in go71b at 128x so 7 times slower would have meant several days, utterly impractical.

Nevertheless I'm positive that Emu71 will not be a nuisance to use so I'll try and install it in my tablet and will use it for less demanding tasks.

(09-13-2018 11:28 PM)rprosperi Wrote:  FI - As another data point, on my Android Moto Force Z phone, I get:

@ 1X: 9.75
@ 128X: 0.07

So it does seem to scale about linearly.

Yes, it seems so, your times are exactly like mine.

(09-14-2018 02:24 PM)Bill (Smithville NJ) Wrote:  I agree with you that an editor does not necessary need network/internet access to do editing only. Network might be required if the editor was not limited to only editing files physically located on the tablet. For example, you might want to edit files in the cloud.

It's a possibility but certainly not my case, I'd rather download the file myself in order to edit it instead of giving full network access and other net permissions to an essentially unknown app.

Quote:But I am curious how an editor program can be limited to plain text files only. File Editors, by definition, edit files!

"File editors" might but this is not what's being discussed here, which is how to install and use Emu71 under DOSBox.

Emu71 doesn't work with graphics or multimedia files so the only thing that's needed is a text (not "file") editor, which is point 4 in Didier's original post (and it's optional at that). Thus a generic "file" editor is not required here and if the one Didier suggested asks for permissions to access and edit file types other than plain text then it's overreaching what's needed, and not to be paranoic but giving such important permissions casually might be a really big and dangerous security hole.

Thanks to all of you for your valuable comments and regards.
V.
.

  
Find All My HP-related Materials here:  Valentin Albillo's HP Collection
 
Visit this user's website Find all posts by this user
Quote this message in a reply
09-14-2018, 10:57 PM
Post: #14
RE: Running Emu71 on Android
(09-14-2018 09:48 PM)Valentin Albillo Wrote:  "File editors" might but this is not what's being discussed here, which is how to install and use Emu71 under DOSBox.

Emu71 doesn't work with graphics or multimedia files so the only thing that's needed is a text (not "file") editor, which is point 4 in Didier's original post (and it's optional at that). Thus a generic "file" editor is not required here and if the one Didier suggested asks for permissions to access and edit file types other than plain text then it's overreaching what's needed, and not to be paranoic but giving such important permissions casually might be a really big and dangerous security hole.


I'm having trouble getting my head around this. I may be a little dense on this.

How does the editor know to limit itself to ONLY opening files that contain only plain text? The Editor program might limit itself to only ".txt" files but that doesn't preclude any file being named ".txt". Does the editor pre-scan the file to check that it is plain text? I've never seen any editor that does that. Which doesn't mean that it doesn't exit. Do you have or know of an editor program that works exclusively on plain text files. I'd really like to know how it does it.

All I am getting at is that any program for Android that opens files (whether they are text files, data files, program listing, whatever), then Android will require the following permissions:

Storage

. Read the contents of your USB storage
. Modify or delete the contents of your USB storage

If the program allows for the file to be open to located in any directory (i.e., the program does NOT limit the file to be open to a single named directory), then that automatically implies that the following permissions MUST also be required:

Photos/multimedia/files

. Read the contents of your USB storage
. Modify or delete the contents of your USB storage


When it comes to Android, I find that these two permissions (Storage and Photos/multimedia files) are always linked. If you get one, then you get the other. I may be (probably am) wrong, but I have never seen a program that requests permission to Storage without also requesting permission for Photo/Multimedia. This is due to the fact that Android allows you to access most directories.

But you are right - this has nothing to do with using emu71 in Dos Box.

I'll let it drop at this. I don't want this to drag into the pros/cons of Androids permission levels. I find that they do not allow for the granularity that is required to create a really secure system. They are pretty gross - either you allow a program to have file access or you don't. If you allow for it then the files (almost any file) can be changed, deleted, etc.


Bill
Smithville, NJ
Find all posts by this user
Quote this message in a reply
09-15-2018, 07:37 AM (This post was last modified: 09-15-2018 07:46 AM by Didier Lachieze.)
Post: #15
RE: Running Emu71 on Android
Hi Valentin,

(09-14-2018 09:48 PM)Valentin Albillo Wrote:  
(09-13-2018 10:24 PM)Didier Lachieze Wrote:  So go71b with a time of .07 at x128 is 7 time faster than Emu71 on my tablet.

A pity. Speed is often of the essence for me and Emu71/DOSBox being 7 times slower than go71b on the same hardware is pretty bad news.

Well, with Emu71/DOSBox you're running an emulator inside an emulator, so it's not surprising that there is a performance penalty compared to the single layer of emulation you have with go71b. This being said I would be interested in the same speed test of Emu71/DOSBox done on other tablets with different processors (mine is using a Snapdragon S801 from 2014).

I didn't pay enough attention to the permissions asked by QuickEdit, I've now removed it and replaced by Ted which as suggested by Bill is a perfectly good editor requiring only storage access.
Find all posts by this user
Quote this message in a reply
09-15-2018, 12:19 PM
Post: #16
RE: Running Emu71 on Android
(09-14-2018 10:57 PM)Bill (Smithville NJ) Wrote:  I'm having trouble getting my head around this. I may be a little dense on this.

How does the editor know to limit itself to ONLY opening files that contain only plain text? The Editor program might limit itself to only ".txt" files but that doesn't preclude any file being named ".txt". Does the editor pre-scan the file to check that it is plain text? I've never seen any editor that does that. Which doesn't mean that it doesn't exit. Do you have or know of an editor program that works exclusively on plain text files. I'd really like to know how it does it.

It might not be able to open arbitrary files if it is registered with Android to only open certain file types (MIME types). I don't know if Android merely uses the file name extension to determine the file type like Microsoft WIndows, or if it fingerprints the actual file contents like GNU/Linux based desktop environments typically do.

Even if it can open it, it probably won't be able to make much sense of it, and may even corrupt the file if you save it without changing anything. Some text editors are 8-bit binary safe and some are not. For example, the ones that are not binary safe might replace illegal UTF-8 sequences with the UTF-8 sequence for Unicode "INVALID CHARACTER" U+FFFD, or might convert "foreign" line ending sequences to its preferred format, or corrupt the file contents in some other way. It may also have high memory usage, as a text editor is optimized for the handling of lines of text, not for the handling of huge globs of binary data with the occasional newline character occurring at random. Ever tried to open a huge binary file in Vim?

— Ian Abbott
Find all posts by this user
Quote this message in a reply
09-15-2018, 12:30 PM
Post: #17
RE: Running Emu71 on Android
(09-15-2018 12:19 PM)ijabbott Wrote:  I don't know if Android merely uses the file name extension to determine the file type like Microsoft WIndows, or if it fingerprints the actual file contents like GNU/Linux based desktop environments typically do.

Android is basically a JVM running on Linux so the odds are that it uses the same methods as a GNU/Linux system.
Find all posts by this user
Quote this message in a reply
09-15-2018, 01:01 PM
Post: #18
RE: Running Emu71 on Android
(09-15-2018 12:30 PM)grsbanks Wrote:  
(09-15-2018 12:19 PM)ijabbott Wrote:  I don't know if Android merely uses the file name extension to determine the file type like Microsoft WIndows, or if it fingerprints the actual file contents like GNU/Linux based desktop environments typically do.

Android is basically a JVM running on Linux so the odds are that it uses the same methods as a GNU/Linux system.

It runs on the Linux kernel, yes, and some of the low-level run-time environment is very similar, but the "middleware" environment is totally different to a typical GNU/Linux desktop.

— Ian Abbott
Find all posts by this user
Quote this message in a reply
09-15-2018, 01:07 PM
Post: #19
RE: Running Emu71 on Android
(09-15-2018 01:01 PM)ijabbott Wrote:  the "middleware" environment is totally different to a typical GNU/Linux desktop.

I never said it wasn't Smile Note that I mentioned "running on Linux", not "GNU/Linux" Smile

This said, I do agree that 'file', the utility that looks at a file's signature in order to ascertain its MIME type, is part of GNU, not of the Linux kernel.
Find all posts by this user
Quote this message in a reply
09-15-2018, 08:37 PM (This post was last modified: 09-15-2018 08:42 PM by ijabbott.)
Post: #20
RE: Running Emu71 on Android
(09-15-2018 12:19 PM)ijabbott Wrote:  It might not be able to open arbitrary files if it is registered with Android to only open certain file types (MIME types). I don't know if Android merely uses the file name extension to determine the file type like Microsoft WIndows, or if it fingerprints the actual file contents like GNU/Linux based desktop environments typically do.

Actually, the GNU/Linux (actually, the freedesktop.org) situation is different to what I mentioned above. The determination of file type (MIME type) for "opening" a file from a file manager can depend on the files contents, but is probably more commonly determined by the file name extension, like on Windows. It all depends on rules in the "shared MIME database" (shared-mime-info-spec). Once the MIME type is determined, other rule sets in .desktop determine the default program to open the file with.

(09-15-2018 01:07 PM)grsbanks Wrote:  
(09-15-2018 01:01 PM)ijabbott Wrote:  the "middleware" environment is totally different to a typical GNU/Linux desktop.

I never said it wasn't Smile Note that I mentioned "running on Linux", not "GNU/Linux" Smile

This said, I do agree that 'file', the utility that looks at a file's signature in order to ascertain its MIME type, is part of GNU, not of the Linux kernel.

Well hopefully that's cleared up a bit, although I still have no idea how Android determines the file type, which was probably the point of this little diversion. Sorry about that. Carry on!

— Ian Abbott
Find all posts by this user
Quote this message in a reply
Post Reply 




User(s) browsing this thread: 1 Guest(s)