TEMPORARY MODE ENABLED
New posts, edits, and any changes will not be saved during the transition period.
Registrations are temporarily disabled until the migration is complete.

  1. Archerite

    OP Archerite GBAtemp Regular
    Member

    Joined:
    Sep 16, 2018
    Messages:
    209
    Country:
    Netherlands
    For the last year or two I have been working on a homebrew project to recreate a fun little platform game called: BatteryCheck. My version of the game is actually using my own multi-platform game engine (which still has no cool sounding name) and I have working preview's in my other threads for the Wii, GameCube and 3DS already. I did also work on a PSP version that has it's own thread but it's not released as a preview yet since it's not finished. The PlayStation 2 has been on my todo list for a while and a few weeks ago I decided it was time to actually make it happen! :D

    Back in 1998 there was a campaign to promote recycling batteries in the Netherlands and part of that was a PC game on CD-ROM you could get if you brought 15 batteries in for recycling. It was based on the same engine as Jazz Jackrabbit 2 and therefore uses the same file formats for the Tileset, Levels and Sprites. About 10 years ago the game was released as Freeware by the publisher but they removed it after a while. After some digging I found one of the companies that worked on the game and I contacted them. The game is licensed as Creative Commons but I need to ask them which specific version. I did get permission to share their download page where the game is listed but they warned about it getting removed in the future. I posted the link and instructions to download in my other thread (here)

    I found a "Let's play video" on youtube and had posted that in the other threads as well so here it is. The play the entire game showing both levels and the end boss....so it has a few spoilers in it :wink:

    Just to be clear this video is NOT of my version of the game engine.

    I have written my own installer that can take the downloaded ZIP file and extract the game files from it. I have not ported that installer to the PS2 yet but the idea is you place the ZIP on a USB drive and it can install the files on a MemoryCard or the USB drive. Currently I have copied the files manually to a virtual MemoryCard to use on the PCSX2 emulator. And I did the same on my real memorycard for testing on hardware. The whole reason I got intterested in the PlayStation 2 again was the release of FreeDVDBoot but it's going to take a while before I would be supporting that as an option. In any case the DVD image would have to be made by the user since it requires the gamefiles to be on the disc and I can not redistribute those files for legal reasons.

    Here are a few screenshots I had posted before on my blog:
    batcheck-mystery-console-001.png First success of booting the game without the actual graphics.
    batcheck-mystery-console-002.png Later graphics where loaded but the colors were wrong for some reason
    batcheck-mystery-console-003.png And here the colors are fixed! Turns out the palette colors needed to be swizzled a bit.
    batcheck-ps2-first-run.jpg And here I got it running on my real PS2 fat :D

    While it's really awesome I finally got it running on the PS2 now my gameengine is far from efficient...or optimized for that matter. I know for sure the PS2 can handle this game and I hope to get it rendering in it's full 60FPS glory but I have no idea how long it will take to get there. The effect of not being optimized is that gameplay is REALLY slow and feels like 20-25FPS at the moment. All other consoles so far have run the games perfectly smooth without much change in the rendering code. There are quite a few reasons it could be running slow but the PS2 is a really complex machine. ;)

    Thanks for your time:D
     
    Last edited by Archerite, Aug 19, 2020
  2. alexander1970

    Member

    Joined:
    Nov 8, 2018
    Messages:
    13,474
    Country:
    Austria
    Thank you for your Time and your awesome Work on your Game Conversion(s).:)
    A little "sad" that not many People notice your great Work and support you,my Friend.

    Thank you and keep it up.:yay:

    P.S.
    Sadly an other great awesome Homebrew Game on the Wii from @newo seems to be not "progressed/finished",but,very understandable...no Support from People....
     
    KleinesSinchen, newo and Archerite like this.
  3. Archerite

    OP Archerite GBAtemp Regular
    Member

    Joined:
    Sep 16, 2018
    Messages:
    209
    Country:
    Netherlands
    Thank you for the complement. And you're welcome :shy::D

    Well, I guess that depends on what you consider support from people. From what I have experienced looking at the views of my other threads and sometimes on my blog posts is that there is interest in my project. Another big reason it might not really get noticed is that the game is not exactly finished yet and the last preview release is more than a year ago. I need to rewrite a huge portion of the game engine to really make an improvement over the last version. It might take a few months to complete but I do hope to include the PS2 and PSP when preview v0.4 get's released! :D

    I knew @newo had a few games or was working on them for the Wii. Much respect to him for working in 3D as I can not even master the 2D games correctly yet. ;) (still need to try them myself:shy:)
     
  4. newo

    newo GBAtemp Advanced Fan
    Member

    Joined:
    Apr 7, 2011
    Messages:
    654
    Country:
    Jamaica
    Working in 3d is not so bad as long as you have the functions to manipulate the vectors. its pretty much the same as 2d except you have an extra z dimension. There is still a lot of room to do things but you have to go one step at a time.
     
  5. alexander1970

    Member

    Joined:
    Nov 8, 2018
    Messages:
    13,474
    Country:
    Austria
    Thank you both for your Time you invest and for keeping Homebrew Games alive,my Friends.:)
     
    KleinesSinchen and Archerite like this.
  6. Archerite

    OP Archerite GBAtemp Regular
    Member

    Joined:
    Sep 16, 2018
    Messages:
    209
    Country:
    Netherlands
    By special request from @niuus I might have a nice update for PlayStation 2 version! While I consider it "unfinished", "not good enough", "buggy", "slowwww", "not user friendly to install", etc.... I might just put up a very early demo that MUST be considered a work-in-progress and is more a proof-of-concept!!!

    One of the current requirements of the PS2 version is manually copying the game files to a memorycard. The idea is that for this Demo it will support both memorycard and if not found there it will try on the first USB drive found. Not sure how long it will take to make this work, as the emulator does not emulate a USB drive plugged in. At least not from what I have found in my version of it. ^_^

    Keep an eye out if you're interested as it might take only a few days....or if I am lucky just a couple of hours! :D

    While working on making the PlayStation 2 port compatible with USB drivesI will update this little spoiler block. Both for a mental record as well as keeping people informed I guess ^_^

    The good news is that after not really working on the sourcecode I can still compile a version that boots on the PCSX2 emulator on my Linux machine! :D Just to check the state of things I also compiled for: Linux, Wii and 3DS and they all work...kind of! The current state of the game engine has a lot of bugs and things that don't work anymore. The good thing is that all platforms mentioned have the same bugs!! :D Except for the Wii....it has stuttering issues when running in the emulator. Not sure what that is all about.

    Looking more into what's required for USB drive support on the PS2 I noticed that I actually had something in place for it already! But not having a working USB plugin for the emulator makes things a little hard to debug. So I did a search and found a project that provides USB wheel emulation support...and also allows to select an image file that it presents to the emulated PS2 as a USB drive! Excellent!!! I just borrowed the SD image from the wii emulator which is already formatted as FAT32 and contains the required game files!

    It seems the emulator detects the plugin and I can select the fat32 disk image fine. Running the game....did not work! Then I remembered how the PS2 has little device drivers that need to be loaded for almost everything! And sure enough I did not add loading USB drivers yet! :shy:

    Now I am looking for examples of how to load the USB driver and use it to access files. :D
    Not much luck yet on finding a good example that uses a USB drive, but I just needed to know first if the emulator plugin is working. So I tried with LaunchELF v4.43a and I am happy to say it actually works!! The only thing is that the path I specified is incorrect...not that it matters without loading the correct USB driver first anyway. But I do know now that the fat32 image I borrowed from the Wii is working as I hoped it would. That makes testing and debugging this so much easier than having to boot/reboot unplug USB from the hardware every single time. ^_^
    After some digging around in the sourcecode of various homebrew for the PS2 I figured out that the USB device drivers are actually not available in the BIOS ROM! Meaning that every game that supported USB drives had to come with drivers on disc or embedded into the executable. It seems the last method is used by uLaunchELF and it embeds the IRX driver into the final executable. Actually, if I understand correctly it requires two drivers that are both provided by PS2SDK. I just need to modify my Makefile to include them and then I should be able to load and use the drivers. :)
    The good news is that the two IRX drivers I think are needed to make USB drives work are now compiled into my executable. Unfortunately I still can't make it work!! I think there is either another module that is required or a function call to made to actually mount the USB drive. My own code gives the error the file can not be found on the "mass:" device. Browsing with uLaunchELF does show the "virtual USB drive" contents though.....and the debug log on the console is showing extra messages that the drive is recognized and mounted! Meaning I am definitely missing something....

    It must be something really stupid or obvious! SO CLOSE....frustrating!! But I also need a break, hahaha. :D
    I have been at for so long....did not really take that break :lol::P...I am beginning to think there is something wrong with the IRX drivers I have on my system! I am going to attempt to recompile uLanchELF from source in my environment to make sure it's all working. It's still possible that it's just me doing something wrong here though....but finding good examples that explain it is really hard!!

    The PS2SDK examples do not include ANYTHING related to USB drive access. At least not from what I have been able to figure out. I think this has been the reason I only added MemoryCard support in there....lack of examples! And the few examples that I did find just say load the USBD.IRX and USBHDFSD.IRX and that's all!! Well....it's not! :(
     
    Last edited by Archerite, May 5, 2021 - Reason: progress: still no working USB drive loading. No clue why!!!
  7. Archerite

    OP Archerite GBAtemp Regular
    Member

    Joined:
    Sep 16, 2018
    Messages:
    209
    Country:
    Netherlands
    After almost 6 hours of digging through old documentation, examples, forum posts and stuff like that.....FINALLY IT's WORKING!!!!!!! At least in the emulator it does! :D

    There is just no clear example of everything that's really needed to load these drivers! But reading through the github source of LuaPlayer I have actually found the solution! It seems that if you load modules from a buffer instead of the BIOS rom0: you need to "patch something" and then call some function to enable these patches!!!!!

    Before I upload this now working version with USB support @niuus I at least want to test it on real hardware first. And then clean up some rough edges and write a simple instruction of how to prepare the USB drive. Should only take a couple of hours I think! :D
     
  8. niuus

    niuus GBAtemp Advanced Maniac
    Member

    Joined:
    Mar 4, 2016
    Messages:
    1,508
    Country:
    Venezuela
    Loving your progress with BatteryCheck, man. My PS2body is ready. :yayps3:
     
    Archerite and KleinesSinchen like this.
  9. Archerite

    OP Archerite GBAtemp Regular
    Member

    Joined:
    Sep 16, 2018
    Messages:
    209
    Country:
    Netherlands
    Thanks for the bump in motivation :D

    I do need to warn you about the current state of the game engine though! It's FAR behind my latest v0.3 release on the Wii and Gamecube! This is a result of my attempts at rewriting various things and not finishing them yet, hahaha. Here is a list of things that don't work right:
    - Walking into walls and ceilings are "sticky". You need to jump to "unstick" it.
    - Collectable's are frozen!
    - Tilemap animations are disabled
    - Recharge gate works....but it's extra layers are not drawn.
    and
    - probably a lot more things that are broken :shy:^_^

    This is not a problem with the PS2 version though, it's just the current state of the mess I made! It's actually not ready for a release on any platform....but as a "proof-of-concept" demo with A LOT of disclaimers it's fine to show "something" for the PlayStation 2 I think! :D
     
    niuus likes this.
  10. Archerite

    OP Archerite GBAtemp Regular
    Member

    Joined:
    Sep 16, 2018
    Messages:
    209
    Country:
    Netherlands
    It's going to take bit longer I am afraid..... :cry:

    I have my PS2Fat connected and after a stack of about 15 memory cards I finally found the one that has FMCB on it...and actually worked! (I have so many because I ordered cheap ones from china in 32MB, 64MB and 128MB capacities last year! :D)

    I am 100% positive I had it working on hardware before since there is a screenshot of it on my blog! But in that whole stack of MC's I could not find one that had the game files on it. And I am sure there has to be at least one that does! It's possible I have just misplaced that specific card somewhere.

    But the bottom line for today is: It does not want to boot on hardware!!! :cry::cry::cry::cry::cry::cry:

    As much as I want to make it work, I am really far to tired for that. I need to setup the network debugging to see some kind of error message and debug the issue. I really don't know what the issue is here. So many things have changed....it could almost literately be anything!

    Really sorry:shy:

    Just like yesterday I will keep updating this block until I fixed it. Not saying it's going to be fixed today at all....but whenever I make progress I will put it in here ^_^
    Last night I did find yet another memory card laying around somewhere....really need to sort my mess out here...hahaha. But just before that I had messed with the display settings and now I have no video output from the PS2 anymore! Just need to either connect it with a RCA cables or dig up the RGB cable so I can use it on the OSSC as I was planning to do anyway. When I get that sorted out I can see whats on that "new" memorycard and otherwise setup the network stuff again to make PS2LINK work so I can get on with debugging my build.

    I do have a test app for my game engine that just rotates a couple of rectangles that I could try first. It does not require reading files from any storage device so less things to go wrong. ^_^

    It's just to bad that it was all going so well in the emulator....well...after a few hours at least. And then the real hardware decides to not play along! :( I really need to create another FMCB card btw....since the one I have only works maybe 4 out of 10 times! Not sure if that's the cards fault or the console card slot. I did buy the thing used about 2 years ago and I have no idea what happend to it before that. At least it should be possible to use the DVD video exploit from last year I guess to recreate it if the card really fails.:D
    Partially good news! That Memorycard I found last night was indeed the one I had used before! It has what seems like a more stable version of FMCB and does indeed contain the batterycheck files. For some reason though None of the versions....even the older ones I had will boot correctly! And using PS2LINK works....but I do not get any debug output! It does show a nice memory dump when it crashes. So I guess that's something ^_^

    I think I remember something about needing to open ports on the "firewall" to receive debug messages back on my PC. I am running ps2client from the ps2dev docker image and now I need to specify which ports to forward to it! So now I need to debug my debugger!!! :(
    It turns out that the messages PS2LINK sends back are UDP ports and not TCP which is the default for docker port mapping! Adjusting for that and I now got debug messages back from the PS2 hardware!!! Yaaay! :D:D

    The good news is that loading from USB is actually working on hardware too! It recognizes the USB drive, mounts it, and then I see it loads the level, tileset and animations. But for some reason I do not know yet instead of continuing ...it crashes!! While that's normally a bad thing I am actually happy to SEE it crash! Hahaha. Instead of just restarting or a black screen! :D

    Really happy that I am back at this stage again for debugging on hardware. Hopefully I can track down the thing that makes it crash. Emultator build is still working just fine! I remember the PS2 being really sensitive to memory alignment and I think this is actually what's happening now. But I will have to first translate that exception screen and all it's magic numbers to something that makes more sense in finding the solution. ^_^
     
    Last edited by Archerite, May 6, 2021
  11. Archerite

    OP Archerite GBAtemp Regular
    Member

    Joined:
    Sep 16, 2018
    Messages:
    209
    Country:
    Netherlands
    YES!!!! IT WORKS!!!! ON HARDWARE!!!!! :D:D

    Please...please....please be kind, I have stated many times the game is in a rough state at the moment. It really works badly but at least I got it "functional" enough to make it boot on hardware! :D

    ONLY DOWNLOAD IF YOU THINK YOU UNDERSTAND THESE INSTRUCTIONS. PLEASE. :)

    Instructions to run (hopefully):
    - Get the data files from the wii SD card (easiest as currently the directory is hardcoded and identical ^_^) (/apps/batterycheck/data/*)
    - Place them on a spare USB drive along with the download attached to this post!
    - Launch the elf file with uLaunchELF (tested on v 4.43a with FMBC 1.966)
    - It takes 10-15 seconds to load everything and before you see anything on screen!
    - Just before the "game" is loaded you see corrupted graphics.....wait a little longer!
    - be patient! :D

    NOTE 1: I DO NOT MAKE ANY PROMISES AND I AM NOT RESPONSIBLE FOR ANY DAMAGES!!
    NOTE 2: The version below has a fixed video mode of 'DTV_480p'and might not work on CRT's.

    Hopefully the instructions above are correct and everything works! And it does not break any USB or memory card.....I just had to cover that in the disclaimer though :P

    Despite all of the current flaws in the game engine....I have to say it does feel like it runs at a decent speed. I would even say it runs comparable to the Wii version! :D

    @niuus and @KleinesSinchen: Have fun! :yayps3:
     

    Attached Files:

    Last edited by Archerite, May 8, 2021
    KleinesSinchen and niuus like this.
  12. niuus

    niuus GBAtemp Advanced Maniac
    Member

    Joined:
    Mar 4, 2016
    Messages:
    1,508
    Country:
    Venezuela
    Finally arrived at my house from work. Time to chill with some BatteryCheck PS2! I'll let you know how it went.
     
    Archerite likes this.
  13. Tweaker_Modding

    Tweaker_Modding Siezure Dice™
    Member

    Joined:
    Sep 1, 2017
    Messages:
    385
    Country:
    United Kingdom
    oh this is a game

    i thought it was a homebrew app that says how much battery is left in the cmos battery
     
    Archerite likes this.
  14. niuus

    niuus GBAtemp Advanced Maniac
    Member

    Joined:
    Mar 4, 2016
    Messages:
    1,508
    Country:
    Venezuela
    Back with my brief report: couldn't use it. :(

    Loaded up fine, but i couldn't play it as the app seems to be set for 480p? My CRT is not compatible so, i was left with a neverending sweeping image.
     
    Archerite likes this.
  15. Archerite

    OP Archerite GBAtemp Regular
    Member

    Joined:
    Sep 16, 2018
    Messages:
    209
    Country:
    Netherlands
    I am so sorry!! I have indeed set it at 'DTV_480p" and was already afraid this might happen. :blush:

    Maybe uLaunchELF can override the video mode? I'll try later and if not will upload a new version with NTSC and a second one with PAL. :)
    Maybe I should look into detecting the region or something:lol:

    I have an OSSC myself now so it will not matter to me what type of video signal it uses.:D I did notice on mine that the image was stretched vertically. Square blocks are more like rectangle's. I am curious if you have the same issue on your CRT.

    I could also make the video mode configurable some other way. I'll look into it. At least you got it booting and it's reading the files from your USB drive.

    Thanks for testing. :D

    I understand the confusion, hahaha. But it's indeed a homebrew game I am working on. :D
     
    Last edited by Archerite, May 8, 2021
    KleinesSinchen likes this.
  16. Archerite

    OP Archerite GBAtemp Regular
    Member

    Joined:
    Sep 16, 2018
    Messages:
    209
    Country:
    Netherlands
    From what I have seen uLaunchELF does not have an option to force the video mode. Since auto-detection of the console's region or reading the settings from uLaunchELF is going to take way more time to do right.....I have quickly created two new versions with NTSC and PAL output! Obviously the PAL version runs slower at 50hz but it does run fine for me on the PS2 fat with OSSC on a SCART cable with YPbPr video mode.:D

    Hopefully one of these is going to work for you. :yayps3:

    PLEASE BE AWARE THIS IS A PROOF-OF-CONCEPT DEMO!

    - Instructions mostly the same as before
    - Just choose either the PAL or NTSC version in the attached ZIP file.

    THANK YOU! :D
     

    Attached Files:

    Last edited by Archerite, May 8, 2021
    KleinesSinchen and niuus like this.
  17. niuus

    niuus GBAtemp Advanced Maniac
    Member

    Joined:
    Mar 4, 2016
    Messages:
    1,508
    Country:
    Venezuela
    LOLWUT

    Finally running! Used the NTSC version.

    Went trough the floors, jumped here and there, got stuck into the wall when jumping and funny things happened... :lol:

    No crashes or errors that i could see. Loads up in less than 10 seconds after you open it in wLaunchELF.
     
    KleinesSinchen and Archerite like this.
  18. Archerite

    OP Archerite GBAtemp Regular
    Member

    Joined:
    Sep 16, 2018
    Messages:
    209
    Country:
    Netherlands
    Hahaha, I think I know what you mean with "funny things". You get kicked to the other side of a wall really fast sometimes...right? :rofl2: Glad to hear it's finally working and you are enjoying the bugs in the collision detection there.

    I should really do something about the long delay and blank screen while it's loading. Even just a little text "Loading..." should be enough right? ^_^

    Thanks for the feedback. :yay:

    EDIT: Worst thing about the "loading time" is that at least three seconds of it are forced after loading the USB driver. Not even sure if it's really required, but uLaunchELF does it too so I just copied that code to make it work. ^_^
     
    Last edited by Archerite, May 8, 2021
  19. niuus

    niuus GBAtemp Advanced Maniac
    Member

    Joined:
    Mar 4, 2016
    Messages:
    1,508
    Country:
    Venezuela
    LOL, correct.

    Oh, that would be nice. Even a loading bar if you are so inclined.

    Always willing to test and help.
     
    Archerite likes this.
  20. Archerite

    OP Archerite GBAtemp Regular
    Member

    Joined:
    Sep 16, 2018
    Messages:
    209
    Country:
    Netherlands
    Challenge accepted! :D

    I have been wanting to add one for over a year actually, hahahaha! Not sure yet on how to make it multi-platform compatible and what theme to use for it yet. But since I am a fan of space scifi stuff I think it's going to be something in that direction:P
     
    niuus likes this.
Draft saved Draft deleted
Loading...

Hide similar threads Similar threads with keywords - BatteryCheck,