Skip to content

Commit

Permalink
Merge pull request #258 from autobleem/develop
Browse files Browse the repository at this point in the history
Merge 0.8.0_RC to Master
  • Loading branch information
ChocoNutDancer authored Nov 27, 2019
2 parents 979ce08 + f7ca8dd commit 434aedc
Show file tree
Hide file tree
Showing 142 changed files with 5,369 additions and 2,279 deletions.
17 changes: 15 additions & 2 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,7 @@ else()
message("Enabling additional memory debugging")
SET(CMAKE_C_FLAGS "-fsanitize=address -fno-omit-frame-pointer")
SET(CMAKE_CXX_FLAGS "-fsanitize=address -fno-omit-frame-pointer")
SET(LDFLAGS "-fsanitize=address -fno-omit-frame-pointer")
endif()
endif()
endif()
Expand All @@ -40,6 +41,8 @@ add_executable(
src/code/engine/game.h
src/code/engine/scanner.cpp
src/code/engine/scanner.h
src/code/engine/GetGameDirHierarchy.h
src/code/engine/GetGameDirHierarchy.cpp
src/code/engine/metadata.cpp
src/code/engine/metadata.h
src/code/engine/ecmhelper.cpp
Expand Down Expand Up @@ -81,6 +84,8 @@ add_executable(
src/code/gui/gui_font.h
src/code/gui/gui_font.cpp
src/code/gui/gui_font_wrapper.h
src/code/gui/gui_gameDirMenu.h
src/code/gui/gui_gameDirMenu.cpp
src/code/ver_migration.cpp
src/code/ver_migration.h
src/code/engine/coverdb.cpp
Expand Down Expand Up @@ -119,6 +124,7 @@ add_executable(
src/code/launcher/ps_stateselector.h
src/code/launcher/gui_btn_guide.cpp
src/code/launcher/gui_btn_guide.h
src/code/launcher/gui_launcher_loop.cpp
src/code/engine/padmapper.cpp
src/code/engine/padmapper.h
src/code/gui/gui_padconfig.cpp
Expand All @@ -135,8 +141,13 @@ add_executable(
src/code/gui/gui_playlists.h
src/code/engine/cardedit.h
src/code/engine/cardedit.cpp
src/code/launcher/gui_mc_manager.h src/code/launcher/gui_mc_manager.cpp src/code/gui/starfx.cpp src/code/gui/starfx.h)

src/code/launcher/gui_mc_manager.h
src/code/launcher/gui_mc_manager.cpp
src/code/gui/starfx.cpp
src/code/gui/starfx.h
src/code/environment.h
src/code/environment.cpp
)


add_executable(starter
Expand All @@ -147,6 +158,8 @@ add_executable(starter
src/code/DirEntry.cpp
src/code/engine/inifile.cpp
src/code/engine/memcard.cpp src/code/engine/memcard.h
src/code/environment.h
src/code/environment.cpp
)

target_link_libraries(autobleem-gui
Expand Down
14 changes: 7 additions & 7 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -15,10 +15,10 @@ Join our discord server for support: [https://discord.gg/AHUS3RM](https://discor

#### NOTE: You do not need to uninstall BleemSync 0.4/0.7/1.0/1.0.1 from your console prior to use AutoBleem. Prepare new USB stick with AutoBleem and it will work as expected.

#### NOTE: If you already installed BleemSync 1.1 firmware in your PSC AutoBleem can be booted from rear USB port
#### NOTE: If you already installed BleemSync 1.1 firmware in your PSC AutoBleem can be booted from rear USB port using an OTG cable.

# AutoBleem
AutoBleem is a tool to make your PlayStation Classic more usefull.
AutoBleem is a tool to make your PlayStation Classic more useful.
It is relatively safe way to add games , change look and feel, change advanced configuration of your mini console.

## Why this project
Expand All @@ -34,7 +34,7 @@ If you found an issue - report it using "Issues" section on this website or bett

**NOTE: You do not need to uninstall BleemSync 1.0/1.1 if it was already installed**

#### NOTE: This tool is made to use only with legal licenced games. The whole project does not use any licenced source code, also it does not alter any of the Sony files inside the mini console, it just uses what is already there and not alter it in any way.
#### NOTE: This tool is made to use only with legal licensed games. The whole project does not use any licensed source code, also it does not alter any of the Sony files inside the mini console, it just uses what is already there and not alter it in any way.

## Features

Expand Down Expand Up @@ -72,7 +72,7 @@ If you found an issue - report it using "Issues" section on this website or bett

## Automatic Game scanning

To allow AutoBleem to scan your games they need to be inserted into Game folder. Just take your game folder and drop it there. As soon there is .bin file inside this folder AutoBleem will try to generate all other needed files for you on console boot. So structure can be as follows:
To allow AutoBleem to scan your games they need to be inserted into the /Games folder. Just take your game folder and drop it there. As soon there is .bin file inside this folder AutoBleem will try to generate all other needed files for you on console boot. So structure can be as follows:

```
Games/
Expand All @@ -92,9 +92,9 @@ There are databases attached to this file with all covers and metadata. Also Aut

### General usage of database files

The inital release package "Full version" DO contain Cover Repository databases. And this is probably everything you need to start your build. In case you want to make the installation small, doenload "Clean version" and then copy the databases to your USB dongle as on previous releases.
The initial release package "Full version" DO contain Cover Repository databases. And this is probably everything you need to start your build. In case you want to make the installation small, download "Clean version" and then copy the databases to your USB dongle as on previous releases.

Database is split into three separate files by region. If you do not for example plan to play JAP region games, you can install just US or PAL. The reason for that split is the file size. Original cover repository in 226x226 PNG was about 1GB in size. I managed to use a lot of optimisations and finally shrink this into much smaller size, but it still is bit big for a small USB dongle.
Database is split into three separate files by region. If you do not for example plan to play JAP region games, you can install just US or PAL. The reason for that split is the file size. Original cover repository in 226x226 PNG was about 1GB in size. I managed to use a lot of optimizations and finally shrink this into much smaller size, but it still is bit big for a small USB dongle.

The files are available on release page. Look for latest release for most updated databases.

Expand All @@ -118,7 +118,7 @@ This software uses some parts of code based on open licences:

UNECM - Copyright (C) 2002 Neill Corlett (GPLv2) (unecm.c)

RetroBoot distribution of Retroarch - genderbent, cores by KMDFManic - All components of the distribution are licenced as described here:
RetroBoot distribution of Retroarch - genderbent, cores by KMDFManic - All components of the distribution are licensed as described here:
http://docs.libretro.com/development/licenses/


Expand Down
37 changes: 37 additions & 0 deletions payload/Autobleem 0.8.0 release notes.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@

*****************************
Autobleem 0.8.0 Release Notes
*****************************

USB Games sub-directories
-------------------------
Games can be organized into a directory hierarchy under /Games. For example, you can organize your sports games under /Games/Sports and you can further organize your sports games into /Games/Sports/Baseball, /Games/Sports/Football, /Games/Sports/Soccer, etc.

You can select the /Games sub-directory you wish to view by pressing the L2 + Select buttons while viewing the game sub-dir carousel. When you select a game directory you will see all the games in that directory plus all the games in it's sub-directories. Using the example above if you select /Games/Sports/Football you will see only football games. If you select /Games/Sports you will see ALL sports games (any games in /Games/Sports itself plus all the games in the Sports sub-directories combined).

If you have duplicate games in more than one sub-directory you will only see one of those games in the carousel. Autobleem will display the game that is in the highest level directory. So if you have the same football game in /Games/Sports and in /Games/Sports/Football the game shown in the carousel will be the game in /Games/Sports.

Four text files are generated during the scan for additional user information.
gameHierarchy_beforeScan.txt The list of games in each /Games directory of your USB drive.
This list is before invalid games are removed and before duplicate games are removed from the carousel display list.
gameHierarchy_afterScanAndRemovingDuplicates.txt The list of remaining games that will be displayed in the carousel after removing duplicate games.
duplicateGames.txt The list of duplicate games.
gamesThatFailedVerifyCheck.txt Invalid games that are removed from the carousel lists.

Consolidated Themes
-------------------
The data for a theme is no longer split between /Autobleem/bin/autobleem/theme and /Themes. All theme data for a theme in contained in one directory under /Themes. This will make it easier both for theme creators and for users to add a new theme. You only have one directory to drag and drop the theme to: /Themes. Axanar will release a collection of themes with all the theme data merged into /Themes. Simply drag and drop the themes you want into /Themes.

Since the files for a theme only need to copied to one directory (/Themes) there is only one options menu item needed to change themes.

Deleting a game
---------------
You can now delete a game from within the game manager menu. If the game is the last copy of the game on the USB Autobleem will ask you if you also wish to delete the !SaveStates for that game.

Internal game favorites
------------------------
Internal games can now be set as a favorite and will show up in the Favorites carousel. The internal favorite data is contained in /System/Databases/internal.db if you wish to save or copy your internal favorites to another USB.

Retroarch favorites
-------------------
Retroarch favorites are now listed as a RA playlist at the bottom of the RA playlist menu. You can select the Favorites playlist to see only your RA favorite games in the game carousel. RA games are set as a favorite in Retroarch not in the Autobleem UI.
Binary file removed payload/Autobleem/bin/autobleem/autobleem-gui
Binary file not shown.
Binary file removed payload/Autobleem/bin/autobleem/starter
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
45 changes: 0 additions & 45 deletions payload/Autobleem/bin/autobleem/theme/default/theme.ini

This file was deleted.

4 changes: 2 additions & 2 deletions payload/Autobleem/rc/launch_rom.rfa.sh
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
#!/bin/sh

# RetroBoot 0.9 - launch_rom_rfa.sh
# RetroBoot 0.10 - launch_rom_rfa.sh
# Direct ROM startup sequence

showrbimage()
Expand Down Expand Up @@ -80,7 +80,7 @@ ITERATION=0
# Start RetroArch. Restart it if it crashes.
while : ; do
rm /tmp/retroboot/.monitor_killed_ra
/media/retroarch/retroarch --config /media/retroarch/config/retroarch.cfg -L $RBCORE "$1" &> /media/retroarch/logs/retroarch.log
/media/retroarch/retroarch --config /media/retroarch/retroarch.cfg -L $RBCORE "$1" &> /media/retroarch/logs/retroarch.log
LVL=$?

if [ $LVL -eq 0 ] && [ ! -f /tmp/retroboot/.monitor_killed_ra ]; then
Expand Down
80 changes: 3 additions & 77 deletions payload/Autobleem/rc/retroarch.sh
Original file line number Diff line number Diff line change
@@ -1,86 +1,12 @@
#
# RetroBoot 0.5.5 based code as agreed with genderbent
#
#!/bin/sh

#!/bin/bash
#kill sony stuffs and set powermanagement parameters
killall -s KILL showLogo sonyapp ui_menu auto_dimmer pcsx dimmer
echo 2 > /data/power/disable
sync

#duplicate internal PSX bios to a bunch of bios files required by retroarch
if [ ! -f "/media/RetroArch/system/scph102b.bin" ]
then
cp -f "/gaadata/system/bios/romw.bin" "/media/RetroArch/system/scph102b.bin"
fi
if [ ! -f "/media/RetroArch/system/scph5500.bin" ]
then
cp -f "/gaadata/system/bios/romw.bin" "/media/RetroArch/system/scph5500.bin"
fi
if [ ! -f "/media/RetroArch/system/scph5501.bin" ]
then
cp -f "/gaadata/system/bios/romw.bin" "/media/RetroArch/system/scph5501.bin"
fi
if [ ! -f "/media/RetroArch/system/scph5502.bin" ]
then
cp -f "/gaadata/system/bios/romw.bin" "/media/RetroArch/system/scph5502.bin"
fi

#make default retroarch config active, if its not already active
if [ ! -f "/media/RetroArch/.config/retroarch/retroarch.cfg" ]
then
cp -f "/media/RetroArch/.config/retroarch/retroarch_DEFAULT.cfg" "/media/RetroArch/.config/retroarch/retroarch.cfg"
fi
sync

#create RA cache folder
mkdir -p "/tmp/ra_cache"

# Start RA log monitor
sh /media/Autobleem/rc/rb_monitor.sh &
MONPID=$!

# Start RetroArch. Restart it if it crashes.
export XDG_CONFIG_HOME=/media/
while : ; do
rm /tmp/retroboot/.monitor_killed_ra
# /media/retroarch/retroarch --config /media/retroarch/config/retroarch.cfg --menu &> /media/retroarch/retroarch.log
HOME=/media/RetroArch /media/RetroArch/retroarch -v --menu --config /media/RetroArch/.config/retroarch/retroarch.cfg &> /media/RetroArch/retroarch.log
LVL=$?

if [ $LVL -eq 0 ] && [ ! -f /tmp/retroboot/.monitor_killed_ra ]; then
break
fi

echo 0 > /sys/class/leds/green/brightness
echo 1 > /sys/class/leds/red/brightness

mv /media/RetroArch/retroarch.log "/media/RetroArch/retroarch_crash.log"
printf "\n--End of retroarch.log--\n\nOutput from dmesg:\n\n" >> /media/RetroArch/retroarch_crash.log
dmesg >> /media/RetroArch/retroarch_crash.log
printf "\n--End of Log--\n" >> /media/RetroArch/retroarch_crash.log



# Flash leds to indicate restart
for i in 1 2 3 4
do
echo 1 > /sys/class/leds/red/brightness
usleep 125000
echo 0 > /sys/class/leds/red/brightness
usleep 125000
done

echo 1 > /sys/class/leds/green/brightness
done

# Kill the monitor
kill $MONPID


rm -rf "/tmp/ra_cache"
sync
sh /media/retroarch/retroboot/bin/launch_rfa.sh

#return to Autobleem UI
cd /media/Autobleem/
rm /tmp/.abload
./start.sh
Loading

0 comments on commit 434aedc

Please sign in to comment.