DreamBoy for 7025

Wir haben aktuell ein Problem mit dem Board und arbeiten an der Lösung...
  • Here is,


    after some days of hard recoding. The GNUBOY emulator running in DM7025.
    This is the first BETA version (v0.1) of the GNU GameBoy and GameBoy Color emulator.


    Requirements:
    + DM7025
    + HDD
    + keyboard (Desirable)


    Install:
    upload to /var/tmp
    ungzip and untar in /
    restart enigma2


    Uninstall:
    manual unistall (do it with care)
    rm -rf /hdd/gb /usr/lib/enigma2/python/Plugins/Extensions/DreamBoy


    Roms:
    It was tested with some commertial roms: 1942, Ghost'N Goublins and Tetris among others.
    This v0.1 version contains only freeware roms from PDROMS due to copyright restrictions.


    Control/Manage:
    The remote control can be used to manage the DreamBoy plugin. Also it can be used to play but it is very slow in order to keep a live you as player. It is better to use an usb keyboard or a gamepad.


    I have tested a logitech corless keyboard and a cordless Rumblepad 2.


    Remote control (RC -> GB)
    up -> up
    down -> down
    left -> left
    right -> right
    ok -> start
    menu -> select
    less -> A
    great -> B


    Keyboard
    up -> up
    down -> down
    left -> left
    right -> right
    enter -> start
    tab -> select
    s -> A
    d -> B


    Gamepad
    up -> up
    down -> down
    left -> left
    right -> right
    bt5 -> start
    bt6 -> select
    bt1 -> A
    bt3 -> B


    TODO:
    + Documentation
    + Re-do game manager
    + Do a uninstaller
    + use zlib to compress the games
    + Enumerate the Working and No-Working ROMS
    + Improve the sound
    + DreamBoy homepage


    Thanks to:
    Seddi for tuxfrodo (I have modify the Seddi's python code to use it in Dreamboy)

    • Offizieller Beitrag

    Cool :)


    I will test it this evening.



    //EDIT
    Short Question. Ive looked at the Python/Shell Starterscripts and you dont try to load any joystick devices ... So gnuboy support linux joysticks out of the box. So if you insmod the joydev modul and create the device nodes (look at my tuxfrodo starter-shell-script), you should be able to use an usb joystick without touching any code :) You can use the joydev modul I already compiled for the actual kernel for the tuxfrodo, no Prob. I will try it this evening.


    By the way: I have a working 7025 version of fceultra (NES emulation), but the soundroutines in fceu are really horrible. So the sound needs a lot of work, furthermore its working via libsdl at the moment and I will eliminate it first and write the graphics directly to the fb to get smaller binaries and faster graphics output. Oh, and I also have a working UAE (Amige emulation) on my 7025, but as expected, the speed is really worth. If I turn off the sound, emulate an A500 and use a frame skip about 20 (only every 20th frame will be drawn) I got an emulation speed about 50-70% :grinning_squinting_face: and there is no chance to speed it up, but was a lot of of fun to get it run :winking_face:

  • Zitat

    Original von mahrko
    Auf deutsch: die Farben flackern... wer kanns übersetzen? :winking_face:
    Box läuft auf RGB und ist über Scart angeschlossen..


    Translation:
    The colours are flickering. The box is connected using RGB over scart.


    cjsosa, This looks like a great plugin. Will test tonight! :winking_face:

  • I've tested your plugin and it is very nice plugin indeed. Great work! :cool2:


    However, the image does have a nasty flicker, unless I put the dreambox into NTSC mode. I hope this can be corrected in a future version.

  • cjsosa, Are you the creator of this plugin? If not, do you know where I can contact the author with bugreports and requests?


    Thank you in advance.

  • Hi all,


    This is the v0.2 BETA version of the GNU GameBoy and GameBoy Color emulator. I apologize for my mistake about TV Flicker. The reason was that I developed the v0.1 version using a FlyDVB-T Duo Cardbus to see the result in my laptop and the flicker is not present. As you report, the flicker appears due to I only write a single pixel line in vertical axis instead of write 4 (currently the view scale factor is set to 4).


    If you have any bugreport or request do not hesitate to sendme it in this great forum.


    Thanks to Seddi, mahrko, astakona73 & Bombjack for their reports.



    Changes:
    V0.1
    + First initial Beta version


    v0.2:
    + TV Flicker Eliminated (Scale and density fixed to 4)
    + Improve Sound
    + Include Generic Joystic Driver (As suggest Seddi, Thanks again)
    + Included a little enumeration of tested games GAMES.tst.
    + Included this README.txt


    TODO:
    + Documentation
    + Re-do game manager
    + Do a uninstaller
    + use zlib to compress the games
    + Enumerate the Working and No-Working ROMS
    + Improve the sound
    + DreamBoy homepage

  • I've tested your new version and the flickering is gone! Very nice. Sound has improved alot too. I've tested with a Logitech joypad and it works perfectly.


    All games I've tried have worked flawlessly! :winking_face: I can give you a list of tested games if you want.


    Seddi, I'm very interested in your NES emulator. I know there is also a SNES emu for linux called Snes9x. Sourcecode is available too. Any chance to port this to the DB?

  • Hi cjosa,


    great work, thanks so much :)


    Only a little Question, where to put the roms in?


    I just copied some roms to /media/hdd/gb/games, but they wont show up in the rom selector list of Dreamboy v0.2.


    What did i wrong?


    2n Question, how to install the USB Gamepad? Just got a Saitek P880, but wont work. Do I need some driver or something like that?


    cu
    Sharky1000

    • Offizieller Beitrag
    Zitat

    Original von Bombjack
    Seddi, I'm very interested in your NES emulator. I know there is also a SNES emu for linux called Snes9x. Sourcecode is available too. Any chance to port this to the DB?


    Nope, not so easy. There are too much dependencies and it needs too much power we didnt have. So no chance to get a snes emulation working fast enough at the moment. To get the desired speed, the maincoding should be done with assembler, but all the asm based emus are x86 based, so no chance or write it completly by your own, and this job would be a bit to big for me :winking_face:


    But the nes looks great and as soon as I get the time, I eliminate the sdl and write routines for direct framebuffer access and change the sound routines.



    sharky1000
    The Python script parses for .gb and .gbc files, so it only will find roms with exactly this ending. In Linux/Unix exactly this ending means: case sensity, the ending have to be in lowcase characters !

  • Wow, thats was fast Seddi,


    thanks for the real fast answer :winking_face:


    Now it works fine :) I just must take chare to avoid special Chars like "_" and so


    Another small Question, is it possible to slow down the games?... My Dream is much to fast :) :) :)


    So no chance to play some games in real speed.


    cu
    sharky1000


    Edit:


    It was not the special Char.. Just recogniced, that some special roms wont show up.

    • Offizieller Beitrag
    Zitat

    Original von sharky1000
    Another small Question, is it possible to slow down the games?... My Dream is much to fast :) :) :)


    So no chance to play some games in real speed.


    Sorry, not at the moment. As far as I know gnuboy should be throttled to 100% speed automatically. Maybe there is a command switch for that. I cant say it at the moment. Normally, emulators like these will regulate the speed via the sound routines, because there you can messure the speed via the sampling frequency.
    So cjsosa may answer this question, because he compiled and ported it and should therefor know what will happen inside the code. Im not inside the code atm


    Zitat

    Original von sharky1000
    It was not the special Char.. Just recogniced, that Roms > 2 MB wont show up.


    Hmm there is no parsing for that inside the python. It should show up, mabye not run, but should be shown inside the Starterplugin.

  • okay,


    thanks for your fast answer again.


    Just my last Q is open... How to install my Saitek USB P880 Joypad?


    It wont work, if i only plugin the USB, so what to do to get it to work?


    cu
    Sharky1000

    • Offizieller Beitrag

    Which Image ?

  • Hi Seddi,


    Im using Gemini 1.7


    btw. funny to talk to a German in English, because Im also from Germany, but by doing this, also non German will understand :winking_face:


    cu
    Sharky1000

    • Offizieller Beitrag

    This thread started in english and cjsosa doesnt understand german. So its OK, to write in english :winking_face:


    OK, with Gemini 1.7 everything should be onboard and fine. So just try the following:


    Log in via Telnet and do the following:


    Code
    modprobe usbhid
    insmod /hdd/gb/bin/joydev.ko


    if you got no error till now: Good :)


    then plug in your usb Joystick and do:


    Code
    cat /proc/bus/input/devices


    And post me the telnet log from this command. You can also do a


    Code
    lsmod


    and post the output too, so I can see whats up with your modules and if the
    usb device is detected correctly.

  • Zitat

    Original von Seddi


    Nope, not so easy. There are too much dependencies and it needs too much power we didnt have. So no chance to get a snes emulation working fast enough at the moment. To get the desired speed, the maincoding should be done with assembler, but all the asm based emus are x86 based, so no chance or write it completly by your own, and this job would be a bit to big for me :winking_face:


    But the nes looks great and as soon as I get the time, I eliminate the sdl and write routines for direct framebuffer access and change the sound routines.


    I'm a bit suprised that the SNES can't be emulated because of power issues. SNES is running 3 mhz and the db7025 is 300mhz. I know CPU power is'nt everything but the snes is overall a very low-tech machine. But if the emulator is slow then I guess there is nothing to do about this. There is also another Linux opensource SNES emulator available called ZSNES. I don't know if it is any faster.


    Anyway, I'm looking forward to your NES emu. :)

  • Cool Seddi,


    thanks for helping. Now it works fine...


    can it be, that only the command modprobe usbhid made the difference?


    Yeah, nice feeling to play games with my Joypad :)


    Thanks in advance


    sharky1000

  • Hallo,


    versteh nur Bahhof, da ich kein Englisch kann :winking_face:


    Aber wenn das Teil mal soeit und auch zufreidendstellend läuft...
    Kann man das evtl. auch als Plugin ins BluePanel setzten, wenn es
    vom Entwickler erwünscht und auch erlaubt wird :face_with_rolling_eyes:


    Dann meldet euch einfach (auf Deutsch wenn möglich) und wir werden es dann ggf. aufnehmen.

    MfG EgLe :]

    Linux will Benutzer, die Linux wollen. Linux ist nicht Windows


    Kernel : 5.4.2-1-MANJARO LTS
    GUI : KDE 5.64.0 / Plasma 5.17.4
    Machine : Intel NUC8i7HVK
    Graphics : Radeon RX Vega M GH
    CPU : Intel Core i7-8809G @ 8x 4.2GHz
    RAM : Gskill F4-3000C16S-16GRS Speicherkarte so D4 3000 16GB C16 Rip