PS2 FMCB/FHDB v1.9 series release thread

Discussion in 'Free MCBoot' started by sp193, Apr 8, 2017.

  1. 48
    16
    32
    Haker120

    Haker120 Member

    Joined:
    Feb 22, 2017
    Messages:
    48
    Likes Received:
    16
    Trophy Points:
    32
    Gender:
    Male
    Location:
    Poland
    Yes, I feel the same but I have no soldering/desoldering skills.
     
  2. 176
    45
    82
    chronoss

    chronoss Member

    Joined:
    Aug 19, 2016
    Messages:
    176
    Likes Received:
    45
    Trophy Points:
    82
    Gender:
    Male
    @sp193 : i have many memory card for ps2 and i have an error when i want to install a FMCB : Error Signature Magigate :(

    Possible to bypass this check ?
     
  3. 244
    439
    122
    uyjulian

    uyjulian Developer

    Joined:
    May 27, 2017
    Messages:
    244
    Likes Received:
    439
    Trophy Points:
    122
    Gender:
    Male
    Try using official memory cards.
     
    chronoss likes this.
  4. 176
    45
    82
    chronoss

    chronoss Member

    Joined:
    Aug 19, 2016
    Messages:
    176
    Likes Received:
    45
    Trophy Points:
    82
    Gender:
    Male
    I know it work but can't buy it anywhere on my contry. Sorry :(
     
  5. 244
    439
    122
    uyjulian

    uyjulian Developer

    Joined:
    May 27, 2017
    Messages:
    244
    Likes Received:
    439
    Trophy Points:
    122
    Gender:
    Male
    No eBay or Aliexpress ?
     
    chronoss likes this.
  6. 176
    45
    82
    chronoss

    chronoss Member

    Joined:
    Aug 19, 2016
    Messages:
    176
    Likes Received:
    45
    Trophy Points:
    82
    Gender:
    Male
    Possibl but no time for now....
     
  7. 820
    1,493
    247
    sp193

    sp193 Developer

    Joined:
    Oct 13, 2014
    Messages:
    820
    Likes Received:
    1,493
    Trophy Points:
    247
    Location:
    Singapore
    Home Page:
    I don't think I've mentioned this here. Here's an explanation for the boot files.

    The system executable and data folders differ according to the region:
    RegionSystem Executable DirectorySystem Data Directory
    JapanBIEXEC-SYSTEMBIDATA-SYSTEM
    USBAEXEC-SYSTEMBADATA-SYSTEM
    AsiaBAEXEC-SYSTEMBADATA-SYSTEM
    EuropeBEEXEC-SYSTEMBEDATA-SYSTEM
    ChinaBCEXEC-SYSTEMBCDATA-SYSTEM
    Asia shares the same directories as US, despite having a different MagicGate region. For this reason, FMCB v1.8b installed for a US set would fail to boot on an Asian console.

    Then the update file also differs, depending on the model. Before ROM 1.50, the PS2 would expect only the version-specific file: osdXXX.elf. XXX is the ROM version number, rounded up to the nearest 0.10 value. For example, ROM v1.01 would expect osd110.elf.
    The only exception was the first ROM, 0100J.
    Newer PS2s would expect osdmain.elf or the osdXXX.elf file. The PSX will only boot BIEXEC-SYSTEM/xosdmain.elf

    This list only affects the first PlayStation 2 releases, which only applied to Japan, US and Europe.
    RegionModelChassisROMUpdate FileAdditional Updates
    JapanSCPH-10000A1.00 Josdsys.elfArgument-passing, System Driver Update
    JapanSCPH-10000A1.01 Josd110.elfArgument-passing, System Driver Update
    JapanSCPH-15000A1.01 Josd110.elfArgument-passing, System Driver Update
    JapanSCPH-18000A+/AB1.20 Josd130.elfSystem Driver Update
    USSCPH-30001B/B'1.10 Aosd120.elf
    USSCPH-30001C/C'1.20 Aosd130.elf
    EuropeSCPH-30002/3/4C/C'1.20 Eosd130.elf
    A+ has a GH-003 A-chassis board with a daughterboard connected, which connects the new Boot+DVD ROM combo. AB is a cross between the A and B-chassis design (GH-008). Only the B-chassis (GH-004/GH-005) had the auto-tilt motor.

    The Asian sets (Korean SCPH-30005 R, Hong Kong/Singapore SCPH-30006 R and Taiwanese SCPH-30007 R) were GH-013 D-chassis models that came with ROM 1.50, from what I remember. The Russian SCPH-39008 appeared even later.
    Japan's first expansion-bay set was the SCPH-30000, which was a D-chassis model.

    China got only one PlayStation 2 release - which was the SCPH-50009. It had its own region in everything, from ROM, game (NTSC-C) and even MagicGate.

    Other regions (10, 11 and 12) were only added some time into the SCPH-50000's lifetime, hence the already started off requiring the osdmain.elf file.

    The early Japanese ROMs had problems with no passing boot arguments to the update, which affects the user's experience. Without it, doing things like ejecting a DVD video disc would cause the HDD Browser to perform a full boot instead of just displaying the browser.
    A small patch is installed to recetify this defect, even for the DVD player update. These consoles did not have the DVD Player built-in.
    The System Driver Update was meant to add support for the PC CARD network adaptor, to support the HDD browser. Although the SCPH-18000 has the new boot ROM, that was from the expansion-bay PS2 - which did not support its CXD9566R PC CARD controller.

    To give the user some flexibility, the following installation options are possible:
    MethodDescription
    NormalInstalls FMCB for only the host PS2 itself. FMCB will work on similar models.
    Cross-modelInstalls FMCB for only the host PS2's region. FMCB will work on all models within the same region as the host PS2's.
    Cross-regionInstalls FMCB for all possible PS2s, across all regions. This offers the highest possible level of model support.
    MultiSame as cross-region, but does not actually install copies of the file. Other than the system patches for the early Japanese consoles, the main FMCB KELF is only installed once and then crosslinked across the various B*EXEC-SYSTEM directories. This would result in the smallest installation footprint, along with the highest possible level of support.
     
    Last edited: Dec 8, 2019
    VTSTech, krHACKen, svotib and 4 others like this.
  8. 1,512
    857
    222
    TnA

    TnA Senior Member

    Joined:
    Jul 1, 2018
    Messages:
    1,512
    Likes Received:
    857
    Trophy Points:
    222
    Gender:
    Male
    Location:
    Germany --> Saxony
    If I ever have the time to start a "gigantonormous" (probably 10 long posts) documentation about FMCB (I can only voucher for the content, up until 1.8b.), I would really like to copy that post (and possibly others), if you are o.k. with it (I'll refer to you in the credits and can link to the post.)!

    On another note:
    I would like to suggest some rather small changes...
    1. If someone provides a 3D-depth'ned version of the FMCB-Logo for the MC-Icon, would you implement it into the installer?
    2. Another thing... Well, I told you about the idea to have a folder, where we essentially 'blind-copy' everything of it to MC... I think you didn't want that due to issues which could arise if users have some files in that folder. I think the best way to counter that is, to only copy the folders in that directory. The second problem which arises is, if the users have no icons... Well, I think those who want to add "App-folders" should take care of all files being present, including the MC-Icons!
    3. Some small changes to the CNF (can be done by someone else. I can do that if you want.)... For example, replacing the 'HDLOADER'-Entry with 'Open PS2 Loader' and the item-number of the very last items, due to FMCB's Payload now supporting 200Items! More specifically... The 'additional apps' don't even belong to FMCB itself, but rather the Noobie-Package! Only those which are meant to be in the BOOT-Folder (wLE & ESR Mini) + the internal functions (POWEROFF, OSDSYS, FASTBOOT...) should be linked!
     
    Last edited: Dec 7, 2019
  9. 820
    1,493
    247
    sp193

    sp193 Developer

    Joined:
    Oct 13, 2014
    Messages:
    820
    Likes Received:
    1,493
    Trophy Points:
    247
    Location:
    Singapore
    Home Page:
    A while back, I found this BUG that has been going around various pieces of homebrew libraries. Perhaps due to people copying and pasting code? Since the error has been the same.
    I saw that it's also present in FMCB.

    In scr_printf.c of ps2sdk/debug, we have some inline assembler code that initializes DMA channel 2 (GIF/PATH 3):
    Code:
      // This appears to have been based on code from Sony that initializes DMA channels 0-9, in bulk.
      asm volatile ("  .set push  \n"
      "  .set noreorder  \n"
      ...
      "  lui  %0, 0x1001  \n"
      "  lw  %1, -0x1ff0(%0)  \n"
      "  lui  %2, 0xff1f  \n"
      "  and  %1, %1, %2  \n" // Clear all interrupt masks under D_STAT, other SIF0, SIF1 & SIF2. Writing a 1 reverses the bit.
      "  sw  %1, -0x1ff0(%0)  \n"
     ...
      "  .set pop  \n"
      : "=&r" (dma_addr), "=&r" (temp), "=&r" (temp2) );
    }
    
    It used to be like this:
    Code:
      asm volatile ("  .set push  \n"
      "  .set noreorder  \n"
      ...
      "  lui  %0, 0x1001  \n"
      "  lw  %1, -0x1ff0(%0)  \n"
      "  li  %2, 0xff1f  \n"
      "  and  %1, %1, %2  \n"
      "  sw  %1, -0x1ff0(%0)  \n"
     ...
      "  .set pop  \n"
      : "=&r" (dma_addr), "=&r" (temp), "=&r" (temp2) );
    }
    
    By writing 0xFF1F (li %2, 0xff1f), the difference is that the unneeded interrupts are not masked, due to the wrong bits of D_STAT getting written to.

    I don't think much really changed for FMCB, in the eyes of the user. The biggest changes to me, is how the PS2 is initialized, support for the HDD (which entails the full end-to-end flow from the power-on to the HDD browser booting) and support for the PSX. For a really long time, it only supported the mainstream PS2s very well.

    I've been trying to document the initialization process. I created a thread about it, here: https://www.psx-place.com/threads/initializing-the-ps2.27283/

    It is unfortunate, but I don't really feel like investing much into PS2 homebrew these days. I think such projects have been very expensive for me to run and I didn't really get much joy from it.

    You mean to replace the one inside right? I guess it could be done, but I would rather put such a cosmetic change on hold until something bigger happens.

    If we do that, then it wouldn't really be a FMCB installer right? Although the right way would be for each app to have its own folder so that the browser can manage them, the browser cannot boot items from the memory card. It would have been nice though.
     
    ted209 likes this.
  10. 1,512
    857
    222
    TnA

    TnA Senior Member

    Joined:
    Jul 1, 2018
    Messages:
    1,512
    Likes Received:
    857
    Trophy Points:
    222
    Gender:
    Male
    Location:
    Germany --> Saxony
    Yes, that's one of the problems of recycling code... :-|

    I didn't knew that. Interesting!

    Thats where I will only set links to your threads&posts, because I don't know much about the HDD-related things.

    Indeed, but fortunately that is a thing of the past! :)

    That's a perfect example, where I would just like to!

    I hope you had at least *some* fun along the way, or learned something or it hopefully matched your studies in some way and was a kind of "training". Even if it were just for a little bit, because in the end the individual is, what all the other stuff is about! Industry, States, Systems... It is generally MEANT to be, to contribute an individual to be thriving...
    Homebrew'ing should help you in some regards and it should make fun! If it doesn't, that's unfortunate. But there are many things to try and do, to get a lifetime experience! So maybe there is something else like traveling or whatever, or creating something you ever dreamed about is something for you. What about building a vertical take-off-vehicle, which is not a helicopter, or whatever? ;)

    It doesn't need to be perfect, IMO...
    Just adding bezier curves to the Logo and then adding an z-axis to it in Blender. Then converting it to a PS2-Icon.

    Well,... Maybe it's something for FMCB 1.97!

    I get what you mean, but technically FMCB mostly had support for this...
    Your current installer also does not only install the KELF (& Drivers), but also Apps and a CNF with entries for them...

    Technically it is probably possible to make them startable via something like the Fortuna-Exploit... (possibly the easier method, but needs varying "Exploit-files" for varying BOOT-ROM-Versions.)

    A better version/scenario for this however would be an OSDSYS-Hack, because it could be applied to all BOOT-ROMs.
    So instead of "static OSDSYS-Items" which need to be linked, the folder-names (on mcfs, not the names shown in the OSDSYS, defined in the icon-files) might be enough to get the name from an ELF and fall back to BOOT.ELF if it were not found...


    It's quite some work, but possible... I even think it would not increase the FMCB-Loader/Payload by more than a few KB!
    But... A lot of work...


    I really hope for @krat0s to provide a writeup about the Fortuna-Exploit!
    MAYBE it is possible to inject enough code into the OSDSYS and also base the injection on the method used by Neme's "OSDSYS-Mask"! Then we could have 1 Payload only, for ALL PS2s AND we could hopefully inject a "Start app"-button! :)
     
    Last edited: Dec 8, 2019
  11. 73
    114
    82
    akuhak

    akuhak Developer

    Joined:
    Jul 4, 2017
    Messages:
    73
    Likes Received:
    114
    Trophy Points:
    82
    I just would like to correct a bit that the first Russian model was only SCPH-39008, while the first Asian models were SCPH-30005, -6, -7.
     
  12. 820
    1,493
    247
    sp193

    sp193 Developer

    Joined:
    Oct 13, 2014
    Messages:
    820
    Likes Received:
    1,493
    Trophy Points:
    247
    Location:
    Singapore
    Home Page:
    Thanks.

    I also realized that I wrote before that the first Asian models were actually the SCPH-30005 R, SCPH-30006 R and SCPH-30007 R.

    The same content on my website will have to be updated later on.
     
    akuhak likes this.
  13. 1,967
    1,546
    347
    jolek

    jolek Senior Member

    Joined:
    Dec 29, 2017
    Messages:
    1,967
    Likes Received:
    1,546
    Trophy Points:
    347
    Gender:
    Male
    I've notice that when I start my PS2 with FMCB on MC & FHDB on HDD only FMCB will initialize leaving HDD not initialized.
    For now everything is fine.

    After some time (~20 min) not doing anything,
    when I'm trying to shutdown console using new embedded power off, console is freezing leaving me at BSOD.
     
  14. 820
    1,493
    247
    sp193

    sp193 Developer

    Joined:
    Oct 13, 2014
    Messages:
    820
    Likes Received:
    1,493
    Trophy Points:
    247
    Location:
    Singapore
    Home Page:
    FMCB does not support the network adaptor. If you activated it by running other software, then it becomes impossible for FMCB to power down the PS2.
     
  15. 1,967
    1,546
    347
    jolek

    jolek Senior Member

    Joined:
    Dec 29, 2017
    Messages:
    1,967
    Likes Received:
    1,546
    Trophy Points:
    347
    Gender:
    Male
    That is the point, I haven't activated HDD, I just leave my PS2 at main menu (~20-30 min).
    I'm able to shutdown console with HDD+NA with embedded power off function for some time,
    when I'm launching it with FMCB.

    When I'll leave my console for more time not doing anything,
    I'll get BSOD when I want to power off console using this embedded option.
     
    TnA and akuhak like this.
  16. 1,512
    857
    222
    TnA

    TnA Senior Member

    Joined:
    Jul 1, 2018
    Messages:
    1,512
    Likes Received:
    857
    Trophy Points:
    222
    Gender:
    Male
    Location:
    Germany --> Saxony
    Might be a bug?

    So essentially this might be a short list of new things for 1.97:
    • new BOOT-Icon with green copy-icon and red delete-icon (by @theANY), see App-System-Thread
    • FMCB-Logo extruded to a 3D-Icon
    • Bug-fix, if there is a bug... See @jolek's post.
    • Some small CNF-Changes (specifically the Item-List)
    • etc.
     
    chronoss likes this.
  17. 176
    45
    82
    chronoss

    chronoss Member

    Joined:
    Aug 19, 2016
    Messages:
    176
    Likes Received:
    45
    Trophy Points:
    82
    Gender:
    Male
    Thanks for the new update but why with the last uLaunch, we haven't these line :

     
  18. 1,512
    857
    222
    TnA

    TnA Senior Member

    Joined:
    Jul 1, 2018
    Messages:
    1,512
    Likes Received:
    857
    Trophy Points:
    222
    Gender:
    Male
    Location:
    Germany --> Saxony
    This has nothing to do with FMCB...
     
    chronoss likes this.
  19. 176
    45
    82
    chronoss

    chronoss Member

    Joined:
    Aug 19, 2016
    Messages:
    176
    Likes Received:
    45
    Trophy Points:
    82
    Gender:
    Male
    Ok sorry :(
     
  20. 820
    1,493
    247
    sp193

    sp193 Developer

    Joined:
    Oct 13, 2014
    Messages:
    820
    Likes Received:
    1,493
    Trophy Points:
    247
    Location:
    Singapore
    Home Page:
    Do you have a HDD (in a USB enclosure) connect to this PS2? If it does, perhaps USBHDFSD got stuck as FMCB tries to shut down the HDD.
     

Share This Page