OESF Portal | OESF Forum | OESF Wiki | LinuxPDA | #planetgemini chat on matrix.org | #gemini-pda chat on Freenode | #zaurus and #alarmz chat on Freenode | ELSI (coming soon) | Ibiblio

IPB

Welcome Guest ( Log In | Register )

3 Pages V   1 2 3 >  
Reply to this topicStart new topic
> Dosbox
vader
post Aug 9 2018, 03:47 PM
Post #1





Group: Members
Posts: 275
Joined: 21-January 18
Member No.: 816,775



After playing around for a while, I have managed to get dosbox compiling on the gemini. I modified the renderer so that it is landscape inverted, and it worked. I haven't tested sound yet, and there are some scaling and keyboard (layout) issues, but it is basically functional. I'll see what I can get done this weekend, and maybe write a small qml front end. I'm sure there are lots of issues, like touch screen that I haven't seen yet, but the good news is that it is running on the gemini!

When it is in a stable state, I can post it for people to test if anyone is interested. I'm sure there are lots of things that will need to be tweaked. As a matter of interest, I did all the compiling/editing on the gemini under sailfish. Same with ffmpeg.
Go to the top of the page
 
+Quote Post
vader
post Aug 15 2018, 12:39 AM
Post #2





Group: Members
Posts: 275
Joined: 21-January 18
Member No.: 816,775



Ok, so with a bit of help from the sailfish forum (thanks coderus), I have got sound working in dosbox. It is now fully functional and works quite well on the Gemini. I am going to write a nice qml front end so you can rotate and change the settings. I installed doom (shareware version) and it runs well. There are a very large number of abandonware dos titles out there, so if you like retro games, dosbox is for you smile.gif
Go to the top of the page
 
+Quote Post
epninety
post Aug 15 2018, 05:40 AM
Post #3





Group: Members
Posts: 17
Joined: 21-July 18
Member No.: 826,550



QUOTE(vader @ Aug 15 2018, 09:39 AM) *
Ok, so with a bit of help from the sailfish forum (thanks coderus), I have got sound working in dosbox. It is now fully functional and works quite well on the Gemini. I am going to write a nice qml front end so you can rotate and change the settings. I installed doom (shareware version) and it runs well. There are a very large number of abandonware dos titles out there, so if you like retro games, dosbox is for you smile.gif


No interest in games, but I'd like to try it out for a few old dos utilites when you thinks its ready for an audience. biggrin.gif
Go to the top of the page
 
+Quote Post
Meganerd
post Aug 15 2018, 06:16 AM
Post #4





Group: Members
Posts: 34
Joined: 17-June 18
Member No.: 824,617



Hey Vader! I am definitely interested in this project. Out of curiousity I would like to run and old version of Windows.
Go to the top of the page
 
+Quote Post
vader
post Aug 15 2018, 02:39 PM
Post #5





Group: Members
Posts: 275
Joined: 21-January 18
Member No.: 816,775



QUOTE(Meganerd @ Aug 16 2018, 12:16 AM) *
Hey Vader! I am definitely interested in this project. Out of curiousity I would like to run and old version of Windows.

Dosbox should be able to run windows 3.1 if you can find a copy smile.gif There are many howtos online. I should have the package ready by the end of the weekend. The hardest part will be working out which dependent libraries aren't installed by default, as I have installed a bucket load. The jolla store doesn't like SDL rotated apps as they mess with the GUI (volume bar goes vertical on the right hand side). I'll make rotation an option, but this will probably only be useful for geminis.

Good news is that I can now compile pretty much any SDL2 app and have fully working video and sound now that I worked out how to rotate the video and get sound working through pulse audio (yuck).
Go to the top of the page
 
+Quote Post
depscribe
post Aug 15 2018, 08:08 PM
Post #6





Group: Members
Posts: 255
Joined: 3-January 18
Member No.: 815,753



Hey, Vader . . .

Glad to see it's moving along. I tried the compiled binaries in the distro a while back: https://www.oesf.org/forum/index.php?showtopic=35015

The biggest problem I found, besides scaling, was keymapping.
Go to the top of the page
 
+Quote Post
vader
post Aug 20 2018, 03:37 PM
Post #7





Group: Members
Posts: 275
Joined: 21-January 18
Member No.: 816,775



QUOTE(depscribe @ Aug 16 2018, 02:08 PM) *
Hey, Vader . . .

Glad to see it's moving along. I tried the compiled binaries in the distro a while back: https://www.oesf.org/forum/index.php?showtopic=35015

The biggest problem I found, besides scaling, was keymapping.


Scaling was easy - we use gl for the renderer, so I just rotated and scaled using gl (single function call). For key mapping, you would normally use the dosbox mapper, but that has proven problematic. I manually created the keymap file by adding some printfs in the code to give me the SDL codes, then made dosbox create a template mapper file which I edited with the discovered codes. I should have probably written a nice util to do this (maybe in the qml frontend), but this took all of 5 minutes. I have Fn keys, and all the normally required things. I added a mod_3 which picks up the gemini's fn key. I installed Elder scrolls last night, but it needed a mouse. Dosbox isn't normally touchscreen friendly, so I might add something to get it to work.

Any keyboard games (eg. doom etc) work really well. You get a 4x3 sceen at full height (ie 1440x1080 - black bars either side). It is getting close to being packagable and it receiving a good amount of testing smile.gif Scumm games work well on the original DOS installations, so I probably won't bother fixing scummvm.
Go to the top of the page
 
+Quote Post
depscribe
post Aug 20 2018, 04:24 PM
Post #8





Group: Members
Posts: 255
Joined: 3-January 18
Member No.: 815,753



QUOTE(vader @ Aug 20 2018, 03:37 PM) *
Scaling was easy - we use gl for the renderer, so I just rotated and scaled using gl (single function call). For key mapping, you would normally use the dosbox mapper, but that has proven problematic. I manually created the keymap file by adding some printfs in the code to give me the SDL codes, then made dosbox create a template mapper file which I edited with the discovered codes. I should have probably written a nice util to do this (maybe in the qml frontend), but this took all of 5 minutes. I have Fn keys, and all the normally required things. I added a mod_3 which picks up the gemini's fn key. I installed Elder scrolls last night, but it needed a mouse. Dosbox isn't normally touchscreen friendly, so I might add something to get it to work.

Any keyboard games (eg. doom etc) work really well. You get a 4x3 sceen at full height (ie 1440x1080 - black bars either side). It is getting close to being packagable and it receiving a good amount of testing smile.gif Scumm games work well on the original DOS installations, so I probably won't bother fixing scummvm.

That's really cool -- especially under Sailfish. Because when you get it all happily packaged, I'll install it instantly and will run the old (and now, free) Word for DOS in it and save as .rtf. There being no Sailfish-native word processor and at this screen size terminal fonts are nicer and more readable than GUI ones, anyway. Good job!
Go to the top of the page
 
+Quote Post
vader
post Aug 21 2018, 03:02 PM
Post #9





Group: Members
Posts: 275
Joined: 21-January 18
Member No.: 816,775



So I got the touchscreen working last night, however for DOS games to successfully use the mouse, it listens to movement, rather than absolute position. I have implemented it like a touchpad but want to see if people like the way I have done it, or can suggest a better way. For simplicity, touching the screen doesn't activate a mouse button, but enables mouse move mode. When you touch and move, the cursor moves like a touchpad ie. the cursor moves. To generate a mouse button, you double tap. If two taps occur within a fast timeframe (ie. 300ms), it activates a left mouse down. If the taps are within a slower timeframe (600ms), it activates the right button. To click and drag, double tap but don't lift your finger. To get an actual double click, you tripple tap. I can't find an SDL routing to detect multiple touches. So:

1) press and release screen (tap): nothing
2) press and drag: mouse move in trackpad style mode
3) tap then press less than 300ms apart: left mouse button down
4) tap then press more than 300ms, but less than 600ms: right mouse button down
5) release after either 3 or 4: mouse button up

You can do 3 or 4, and move your finger to do a "click and drag".

Works well in all the games I have tried so far.

I have also installed word 5.5 (the now free version), and it works. The mouse functionality works, as do the Fn keys etc.
Go to the top of the page
 
+Quote Post
depscribe
post Aug 21 2018, 03:59 PM
Post #10





Group: Members
Posts: 255
Joined: 3-January 18
Member No.: 815,753



QUOTE(vader @ Aug 21 2018, 03:02 PM) *
I have also installed word 5.5 (the now free version), and it works. The mouse functionality works, as do the Fn keys etc.

Do you have it RPMified?

Made a trip to town a few hours ago and was delighted that the phone stuff all works. This without having selected the SIM card in an Android boot, on an X27 device, so perhaps that bug got squashed. I need to experiment a little with getting it to connect to the VPN over the mobile network, but that will involve sitting in a park with a cup of coffee and playing with configuration for awhile.

Having a useful word processor will make my life pleasanter. You have done a service.

Am I right in thinking you've upgraded your Sailfish from 2.14.14? Notice any differences? (Sailfish's one real weakness, I think, is in documentation -- there isn't any I can find.)
Go to the top of the page
 
+Quote Post
vader
post Aug 21 2018, 05:45 PM
Post #11





Group: Members
Posts: 275
Joined: 21-January 18
Member No.: 816,775



QUOTE(depscribe @ Aug 22 2018, 09:59 AM) *
Do you have it RPMified?


No, that is tonight's job. I'll call it an early beta smile.gif just for gemini. I need to work out the dependencies - I have installed quite a few libraries.

QUOTE(depscribe @ Aug 22 2018, 09:59 AM) *
Having a useful word processor will make my life pleasanter. You have done a service.


Welcome. I had a play and it looks usable.

QUOTE(depscribe @ Aug 22 2018, 09:59 AM) *
Am I right in thinking you've upgraded your Sailfish from 2.14.14? Notice any differences? (Sailfish's one real weakness, I think, is in documentation -- there isn't any I can find.)


Nope, still the standard 2.1.4.14! I've beaten it into submission now, which is why I am starting to go and compile up apps which are missing. There are a few good docs out there. This is a good start:

https://github.com/sailfishos-community/awesome-sailfishos
Go to the top of the page
 
+Quote Post
vader
post Aug 22 2018, 05:07 PM
Post #12





Group: Members
Posts: 275
Joined: 21-January 18
Member No.: 816,775



So I think I have an RPM which has the correct dependencies. It is still in an early state, but pretty much everything works. The mouse is as discussed earlier, and the keyboard has most keys mapped out for the US keyboard. One annoying thing is that to get the colon ":" character, you need to press shift-FN-K as dosbox "knows" that : is above ; sad.gif

There are still a lot of FN key combinations not set up, but I haven't needed them yet so......To get function keys, press FN-Alt-1 to FN-Alt-0 (Fn1 -> Fn10). The RPM creates a ~/dos directory and sets dosbox to mount it as c:. You can change you setup by editing the map or config files in ~/.dosbox . I will add the ability to the qml page later.

The only annoying thing at the moment, is that when no sound or input is detected for a while, sailfish thinks the app has died and brings up a popup asking you to wait or close the app. I am looking into this and will fix it soon. This is a gemini only port, as I have set the rotations etc for the gemini - another thing to add to the qml front end. This is really a pre-release so people can test/make suggestions.

Enjoy!

PS. if you can't install due to dependency problems, give me a yell and I'll add them. I checked against the original sailfish image mounted on my linux box.

Before installing, unzip the attached file (gunzip Dosbox-0.1-1.armv7hl.rpm.gz). As usual, you install at your own risk.
Attached File(s)
Attached File  Dosbox_0.1_1.armv7hl.rpm.gz ( 809.77K ) Number of downloads: 9
 
Go to the top of the page
 
+Quote Post
depscribe
post Aug 22 2018, 05:25 PM
Post #13





Group: Members
Posts: 255
Joined: 3-January 18
Member No.: 815,753



QUOTE(vader @ Aug 22 2018, 05:07 PM) *
So I think I have an RPM which has the correct dependencies. It is still in an early state, but pretty much everything works. The mouse is as discussed earlier, and the keyboard has most keys mapped out for the US keyboard. One annoying thing is that to get the colon ":" character, you need to press shift-FN-K as dosbox "knows" that : is above ; sad.gif

There are still a lot of FN key combinations not set up, but I haven't needed them yet so......To get function keys, press FN-Alt-1 to FN-Alt-0 (Fn1 -> Fn10). The RPM creates a ~/dos directory and sets dosbox to mount it as c:. You can change you setup by editing the map or config files in ~/.dosbox . I will add the ability to the qml page later.

The only annoying thing at the moment, is that when no sound or input is detected for a while, sailfish thinks the app has died and brings up a popup asking you to wait or close the app. I am looking into this and will fix it soon. This is a gemini only port, as I have set the rotations etc for the gemini - another thing to add to the qml front end. This is really a pre-release so people can test/make suggestions.

Enjoy!

PS. if you can't install due to dependency problems, give me a yell and I'll add them. I checked against the original sailfish image mounted on my linux box.

Before installing, unzip the attached file (gunzip Dosbox-0.1-1.armv7hl.rpm.gz). As usual, you install at your own risk.

Way cool! I've d/led it but probably won't install it until the morning and coffee -- we're at about the hour when I make foolish, basic, hard-to-find-later mistakes. I'm hoping that dosbox treats autoexec.bat as dos itself did. Dosemu did, but your setup sounds far better than dosemu ever was.

Many thanks!
Go to the top of the page
 
+Quote Post
vader
post Aug 22 2018, 06:51 PM
Post #14





Group: Members
Posts: 275
Joined: 21-January 18
Member No.: 816,775



QUOTE(depscribe @ Aug 23 2018, 11:25 AM) *
Way cool! I've d/led it but probably won't install it until the morning and coffee -- we're at about the hour when I make foolish, basic, hard-to-find-later mistakes. I'm hoping that dosbox treats autoexec.bat as dos itself did. Dosemu did, but your setup sounds far better than dosemu ever was.


It doesn't automatically run autoexec.bat, *however* the dosbox configuration file has an autoexec section at the bottom which runs the given commands. You will see I added the mount and change to c drive

eg. (from dosbox-SVN.conf)

[autoexec]
# Lines in this section will be run at startup.
# You can put your MOUNT lines here.
mount c ~/dos -freesize 1024
c:

PS. I think I am on the other side of the planet, so sometimes the response time is a bit slow smile.gif
Go to the top of the page
 
+Quote Post
depscribe
post Aug 23 2018, 09:42 AM
Post #15





Group: Members
Posts: 255
Joined: 3-January 18
Member No.: 815,753



QUOTE(vader @ Aug 22 2018, 06:51 PM) *
PS. I think I am on the other side of the planet, so sometimes the response time is a bit slow smile.gif


Yup -- I'm in the middle of the U.S., so I couldn't be much farther from you.

Slightly OT: are there any Fn key mappings generally in SFOS for Gemini? I have some terminal mode utilities that don't much work without them, but I cannot find any combination of keys that profuces a function key.

Back on topic: Your Dosbox package installed easily and perfectly. Great work! I have Word for DOS running well. It *seems* to run a bit more nicely in one of the graphics modes allowed in the Edit>Preferences settings. And you're entirely right that the "Application not responding" sideways pop-up is really, really irritating.

A probably stupid question: are we limited to the various SFOS repositories, or might we harvest RPMs from elsewhere? Do we know the distribution and version on which Sailfish is based and therefore know where we might resolve dependencies?
Go to the top of the page
 
+Quote Post

3 Pages V   1 2 3 >
Reply to this topicStart new topic
1 User(s) are reading this topic (1 Guests and 0 Anonymous Users)
0 Members:

 



RSS Lo-Fi Version Time is now: 7th December 2019 - 09:01 PM