Author Topic: PAP KIII Plus (Dingux, 480x272 screen)  (Read 54478 times)

Jack83 (OP)

  • *
  • Posts: 129
PAP KIII Plus (Dingux, 480x272 screen)
« on: November 03, 2017, 05:06:05 pm »
After the findings of @algorithm and myself about our little PAP KIII Plus. I tried a lot of software and was not entirely pleased. The screen resolution is higher than most other devices and having the emulators either stretched to 16:9 or not fullscreen was not an option ;D

So I dug into the old dingox development and tried the windows port of the toolchain to compile software.

The first result is a port of the DinguxCommander. It can be found here:
https://github.com/JackD83/DinguxCommander

The on screen keyboard is not centered but the rest works quite well.



I started work on a port of dmenu, but the device is already running a fork of dmenu which makes it a little harder. First results are promising.

Some software already supports the higher resolution, maybe this thread could be used to list them.

I hope there is at leased a little interest and I will keep you posted.

algorithm

  • *
  • Posts: 99
Re: PAP KIII Plus (Dingux, 480x272 screen)
« Reply #1 on: November 03, 2017, 06:21:36 pm »
Nice work there.

At the moment from some of the dingux apps I have tried, Handy (Atari lynx emulator) as well as Vice (c64) emulator support the 480x272

The below may be of help too (Gives information on how to extract the ext3 partitions, modify them and save them back (and this can be flashed via the update tool in pap kiii plus by previously placing the required files in root of microsd and running update tool via dinguxcommander

http://exlmoto.ru/creating-ritmix-rzx-50-custom-firmwares/

SashaX

  • *
  • Posts: 14
Re: PAP KIII Plus (Dingux, 480x272 screen)
« Reply #2 on: November 10, 2017, 07:44:12 am »
After the findings of @algorithm and myself about our little PAP KIII Plus. I tried a lot of software and was not entirely pleased. The screen resolution is higher than most other devices and having the emulators either stretched to 16:9 or not fullscreen was not an option ;D

So I dug into the old dingox development and tried the windows port of the toolchain to compile software.

The first result is a port of the DinguxCommander. It can be found here:
https://github.com/JackD83/DinguxCommander

The on screen keyboard is not centered but the rest works quite well.



I started work on a port of dmenu, but the device is already running a fork of dmenu which makes it a little harder. First results are promising.

Some software already supports the higher resolution, maybe this thread could be used to list them.

I hope there is at leased a little interest and I will keep you posted.

Its happening! Thanks Sir.
You might not be aware, but internationally we are very interested on that project.
If you want, we can help you with a "little" Paypal donation (we know time is expensive).

We wish you all the luck

Best regards

dmitry_smagin

  • *
  • Posts: 420
Re: PAP KIII Plus (Dingux, 480x272 screen)
« Reply #3 on: November 10, 2017, 10:11:50 am »
I have sources of dmenu already adapted for rzx50.
I got them from one of chinese developers some years ago. Since then it was abandoned in favor of other shell, so I think I can post it.

http://prizma.bmstu.ru/~exmortis/archive/dmenu.tar.bz2
GCW-Zero prototype, Dingoo a320, Ritmix rzx-50, Dingoo a380, Xperia Play

Jack83 (OP)

  • *
  • Posts: 129
Re: PAP KIII Plus (Dingux, 480x272 screen)
« Reply #4 on: November 10, 2017, 01:02:43 pm »
Here is a first version of the ported dmenu.

Warning: Use at your own risk! The installer will change the rootfs. Make a backup of your internal SD!

https://github.com/JackD83/dmenu/blob/master/release/dmenu_0.7_k3_0.1.zip

the zip has to be extracted to your external SD. You need the dmenu folder in the root of the external SD. The menu will be run from there. Run the installer/install.sh script to make the new dmenu your default menu. If the external SD is not present on boot, the old menu will be used.

Work done:
- set the new 480x272 resolution. You need a theme that supports that resolution. I edited the resources from the Toddler theme and they are included.
- set path to /mnt/mmc/dmenu
- removed the non working code for locked device and charging status (see problems)
- added volume keys to change volume
- fixed volume and brightness not stored in config after exit
- installer links /usr/local/home to /mnt/memory/home to allow emulators to save their settings. Some do not even work without it


Problems:
- The battery symbol is empty while charging
- Mounting as drive is not working correctly. Device needs to be plugged in on boot and currently needs a restart to see the new files. This functionality seems to be provided by the original dmenu and has to be adapted.
- Launching programs (or roms) with spaces in the path do not work. My error, will be fixed asap
- Shutting down using the power button is ugly. Some other code gets executed and there are screen distortions

Code is available at https://github.com/JackD83/dmenu

I'm not a c/c++ (but Java  8) )  so expect some bugs :P

@dmitry_smagin I think I used your repo as source ;D

algorithm

  • *
  • Posts: 99
Re: PAP KIII Plus (Dingux, 480x272 screen)
« Reply #5 on: November 10, 2017, 10:32:11 pm »
Tried it and configured the .cfg file so that it points to relevant icons, game folder paths, etc.

Some things which would be great as follows

Getting the program to run is the same as attempting to run it via built in file browser of papk3plus (most do not run and exit back to dmenu).  Would there be any chance of getting these compatible in the same way as running the apps/games via dingux commander? - edit: seems the pack I was using does not run the games via dingux commander as well. ignore.   Used another pack and runs file

Mode change before running the app/game.  e.g  setting screen to centre or scaled, then running the game, then reverting back to 480x272 when exit?

« Last Edit: November 10, 2017, 10:40:35 pm by algorithm »

onthebridge

  • *
  • Posts: 108
Re: PAP KIII Plus (Dingux, 480x272 screen)
« Reply #6 on: November 11, 2017, 11:08:55 am »
Finally bought it, seeing all the efforts that are going on I wanted to join the club and relive the Dingoo days. I will install this Dmenu the moment it arrives  :)

lemmywinks

  • ****
  • Posts: 2749
Re: PAP KIII Plus (Dingux, 480x272 screen)
« Reply #7 on: November 11, 2017, 03:33:07 pm »
Yeah I also caved in and ordered one yesterday, if anybody can measure the dpad and post the results that would be great,  hopefully it can be modded.
Handhelds:
GPD Win, GPD XD 64gb, Pap KIII-Plus, 3DS XL, DSi XL, GBA SP, GBBC Clone, Gameboy Pocket, PSP Go
PC:
HP Envy M6
Acer 522
Psion 5 & 5MX

psx_specter

  • Posts: 2
Re: PAP KIII Plus (Dingux, 480x272 screen)
« Reply #8 on: November 11, 2017, 05:47:43 pm »
Lemmywinks, when I got my PAP-KIII Plus, my first inclination was to replace that goofy two-piece d-pad. Although I do not have measurements for you, I did find that no matter what d-pad I tried as a replacement, I was unable to overcome the ridges that are molded into the underside of the faceplate. These ridges keep any replacement d-pad from sitting high enough to be functional. I believe these are there to help keep the two-piece d-pad aligned and working as well as it can. I suppose said ridges could be removed with a dremel, but I was afraid that if the replacement d-pad I tried did not work well, I would be left with a poorly functioning d-pad. I chickened out and put it back together, accepting the stock d-pad for what it is.

Jack83 (OP)

  • *
  • Posts: 129
Re: PAP KIII Plus (Dingux, 480x272 screen)
« Reply #9 on: November 12, 2017, 05:21:16 pm »
Mode change before running the app/game.  e.g  setting screen to centre or scaled, then running the game, then reverting back to 480x272 when exit?

That was a good idea. I added the parameter "Center" or "Zoom" to the configuration. If your item has one parameter on true, the screen will be adapted.
Code: [Select]
   MenuItem GBC
    {
        Icon = "res/emulators/gnuboy.png"
        Name = "Ohboy"
        Executable = "./ohboy.dge"
        WorkDir = "/mnt/mmc/emulators/gbc/"
Selector = "true"
        SelectorDir = "/mnt/memory/game/gbc"
        Center = "true"
    }

Its still not possible to have spaces in the path of the work dir. The bug was already in the original release.
I took a look at the code @dmitry_smagin posted and it looks suspiciously like the original dmenu running on the device

https://github.com/JackD83/dmenu/blob/master/release/dmenu_0.7_k3_0.2.zip

I tried to compile a lot of emulators and change the resolution. A very common problem is the lack of libao.so.4. Its a audio wrapper lib that is not in the dingux sdk and not on the device, yet some software claiming to be written for dingux links to it. Does anybody know about this?

I have some free time around christmas and will continue work then.

@algorithm Can you post a link to the pack you used?


algorithm

  • *
  • Posts: 99
Re: PAP KIII Plus (Dingux, 480x272 screen)
« Reply #10 on: November 12, 2017, 05:54:06 pm »
Great addition to the optional scale modes.

The link to the pack is as follows.   Some of the apps give screen corruption due to possibly more direct framebuffer access, but seem to run anyhow

http://dingoo.a320.free.fr/downloads/local_pack/OpenDingux%20Local%20Pack%20v6%23PT-BR%20%2804-12-2012%29.7z

algorithm

  • *
  • Posts: 99
Re: PAP KIII Plus (Dingux, 480x272 screen)
« Reply #11 on: November 12, 2017, 08:32:24 pm »
Some tests of dmenu configured with some applications here

Dmenu in action and running quake later
https://www.dropbox.com/s/b46wocscefts6wc/opendinguxsystemandquake.avi?dl=0

C64 emulator (Vice) 480x272 native
https://www.dropbox.com/s/67z80wtlt7pnv2v/opendingux-vice.avi?dl=0

Gives a whole lease of live to the device.  ?30-?40 for a new opendingux handheld, not bad. :-)

Would it be possible to implement the option of reverting back to the default menu (in internal sd) as an option too  (So the user can choose when they wish to use the default or the new dmenu?)
« Last Edit: November 12, 2017, 08:46:52 pm by algorithm »

lemmywinks

  • ****
  • Posts: 2749
Re: PAP KIII Plus (Dingux, 480x272 screen)
« Reply #12 on: November 13, 2017, 10:09:31 am »
Nice work, looking forward to receiving mine. What size SD cards have you guys been using, is 64gb ok?
Handhelds:
GPD Win, GPD XD 64gb, Pap KIII-Plus, 3DS XL, DSi XL, GBA SP, GBBC Clone, Gameboy Pocket, PSP Go
PC:
HP Envy M6
Acer 522
Psion 5 & 5MX

algorithm

  • *
  • Posts: 99
Re: PAP KIII Plus (Dingux, 480x272 screen)
« Reply #13 on: November 13, 2017, 02:52:43 pm »
I have not tried 64gb.  (32gb worked well).

One thing to note however is that you need to use another third party formatting tool to format the disk as FAT32 (If the size is larger than 32gb) - as windows uses exfat for larger drives which will more than likely not work well when connected to the handheld

van denhawk

  • *
  • Posts: 235
Re: PAP KIII Plus (Dingux, 480x272 screen)
« Reply #14 on: November 13, 2017, 05:49:52 pm »


C64 emulator (Vice) 480x272 native
https://www.dropbox.com/s/67z80wtlt7pnv2v/opendingux-vice.avi?dl=0

Gives a whole lease of live to the device.  ?30-?40 for a new opendingux handheld, not bad. :-)


Is C64 fullspeed with sound? If so might get one of these

algorithm

  • *
  • Posts: 99
Re: PAP KIII Plus (Dingux, 480x272 screen)
« Reply #15 on: November 13, 2017, 08:13:01 pm »


C64 emulator (Vice) 480x272 native
https://www.dropbox.com/s/67z80wtlt7pnv2v/opendingux-vice.avi?dl=0

Gives a whole lease of live to the device.  ?30-?40 for a new opendingux handheld, not bad. :-)


Is C64 fullspeed with sound? If so might get one of these

I have only tried two games on it so far (Platoon and Rick dangerous) and yes they are Full speed. And that is even when I use "Resid" SID emulation which is more accurate

For demo's however, in particular those that use irq loading while showing a section, it slows down to a crawl. (this would be the stage where it would need to emulate two cpu's in C64 and the 1541 drive.)

For games it works very well.

Jack83 (OP)

  • *
  • Posts: 129
Re: PAP KIII Plus (Dingux, 480x272 screen)
« Reply #16 on: November 15, 2017, 08:46:07 am »
I had some fun yesterday  ;D

Attached you find the pinout for the serial console to the device. Root has no password and you can just log in. Use 57600 baud.

Documentation, kernel sources, kernel patches and other stuff for the lepus dev board (which our device is based on) can be found here ftp://91.215.122.205/mirrors/Ingenic/legacy-ftp.ingenic.cn/3sw/01linux/

I hope I can get usb network running.

Found out that the dmenu I compiled runs at 40% cpu idle.   ???

psx_specter

  • Posts: 2
Re: PAP KIII Plus (Dingux, 480x272 screen)
« Reply #17 on: November 21, 2017, 12:19:03 am »
Great work, Jack and Algorithm. I think with proper firmware, maybe even an overclock to 600-800mhz, and a handful of emulators compiled to run at 360x272 or 480x272, this thing could be a contender. I noticed that zooming the screen in and out to achieve a decent screen size or aspect ratio causes a performance hit in scummvm and maybe some other emulators. I am currently running an edited version of the stock dmenu with Jack's custom dmenu  installer  to mount the file system as r/w. I used Gparted to make the micro sd system partitions a little larger to allow editing the dmenu configs in ubuntu. I wanted to be able to keep the stock emulators and still be able to add to the existing dmenu. It's hackish but it works for me for now. Wish I could help this project, but I can't seem to compile the toolchain for use  with cygwin. Probably for the best, I only know enough to be dangerous anyway  ;)
It looks like the default resolution for mame can be edited in the source code, that would be a phenomenal addition to the already good lineup of emulators for our KIII-plus. Is there a way to run native dingoo 3D games on this?
 

Jack83 (OP)

  • *
  • Posts: 129
Re: PAP KIII Plus (Dingux, 480x272 screen)
« Reply #18 on: November 22, 2017, 08:44:23 am »
Don't keep your hopes up for a new firmware. While all material is available to build a new bootloader, new kernel and  rootfs, its very complicated and I lack the skill to do it.

There are several parts I don't know:

- What type of display driver is used? There are some drivers available for the lepus dev board. Dont know if they work on the k3
- The kernel sources and available patches from ingenic are quite old (2.6.3.13) while OpenDinguX seems to be on 3.4
- I have no Idea how to make the rootfs compatible to opendingux

But there are things that I can do. I compiled some emulators with the dingux toolchain that where meant for the Ritmix RZX-50, which has the same screen resolution. Running the emulators pre-build resulted in a distorted screen but my own builds work quite well. I tried the GB, GBA, NES and SNES emu. There is still a problem with the libao, which is present on  RZX-50 and Opendingux but not in legacy dingux. I think it should be possible to transplant the lib to the K3, but I was not yet successful. The lib is used in Picodrive (genesis), FBA and others.

I'm still working on that dmenu port. I fixed the battery symbol and I'm working on the "spaces in paths" bug. C is an ugly language to work with :P Adding a script to swith between the native and the custom dmenu will be very easy, I will add that in the next release. I still think about a menu where to add and edit the menu entries, but that will take time.

I have not tried any native games but tried Doom and Duke3D. They can both be adapted to use the full resolution in the config and run real smooth. I'm missing the doom music though :'(

lemmywinks

  • ****
  • Posts: 2749
Re: PAP KIII Plus (Dingux, 480x272 screen)
« Reply #19 on: November 22, 2017, 10:13:48 am »
Is the OpenDingux team still active? Seeing as that's now an OS without any hardware to run on the KIII Plus may have come along at the right time is there is any interest in it from those guys. Looking at the sub-forum here it seems very quiet though.
Handhelds:
GPD Win, GPD XD 64gb, Pap KIII-Plus, 3DS XL, DSi XL, GBA SP, GBBC Clone, Gameboy Pocket, PSP Go
PC:
HP Envy M6
Acer 522
Psion 5 & 5MX