Skip to content

HLC v2.0 - The RetroFlow/Grid View Update

Compare
Choose a tag to compare
@BlackSheepBoy69 BlackSheepBoy69 released this 09 May 09:20
· 42 commits to main since this release
e3864be

(v2.0)
THE BIG RETROFLOW UPDATE!

Quick Overview:
RetroFlow (enable in settings), SwitchView/GridView, JIT rolling cache, 8 backgrounds, 10 languages

Finally added setting: RetroFlow ON/OFF!!! Has all the categories of RetroFlow 6.0 except: PSM,
ScummVM, MAME/MAME+, NeoGeo, and FBA... However please note it DOES support several "newer"
RetroFlow categories: RetroArch PS1, Pico-8, Dreamcast. Supports PS1/PSP without RetroFlow
(Adrenaline Manager) but doesn't support PSP Categories Lite (yet).

It will read from the data folders created by RetroFlow, but it won't create or delete any folders
or files except during cover downloads. If this is your first time using RetroFlow, it's recommended
to install the current latest version of RetroFlow, run it at least once, and follow its
installation instructions. This app uses Adrenaline Manager instead of RetroFlow's Adrenaline
Launcher because many people have issues with Adrenaline Launcher.

Cache will magically always stay up to date due to JIT Switch Generation ("Rolling Cache")
This is probably the main reason to use this app over RetroFlow.

Fixed a major bug from v1.2/v1.2.1 where sometimes if rolling cache activated, it would clear
cache instead of updating a line... You will know you had the issue if the "writing to cache"
screen showed up every time - it's not supposed to. Hopefully fixed in this version. The
"writing to cache screen" should only show up when you install a new app! If you had the bug,
startup should now be much faster. It's ~3.9 seconds with 500 games but if you enable
RetroFlow, it adds ~2 seconds.

Finally released Grid View, available from the start menu with "Allow View #5/#6", because it
has finally been optimized enough that it doesn't cause massive lag.

"Loose match" RetroFlow cover downloads... A lot of people really wanted this because of
how strict the RetroFlow naming conventions are. Example: you can download a cover for a
game called just "Super Metroid"... it will default to the USA cover.

Upgraded cover downloads by start menu a lot: skips entryes that already have covers. Added a
"Screen.waitVblankStart()" so that you can see briefly see what covers are being skipped.
Works for all categories now including homebrews that have a vita-style cover (you should
override them if so). Made download synchronous instead of asynchronous: Seems much faster.
Mass cover downloads for PSP/PS1 will now use the ID scanner, as is done in triangle menu.
Fixed where it wouldn't error out for "no wifi".

Bulletproofed cur_quick_dir, a variable used for overrides and everywhere that the code
System.doesFileExist(...) used to be (cur_quick_dir is much faster but less stable).

Drastically bulletproofed the function for increasing and decreasing category (ie: for
when you press square). It will now properly hide an existing but empty CUSTOM category.

Added a new style for "Category Button: Up/Down"

Fixed N64 spacing in flat view (experimental)... added smoothness to zoomin view and left view.
Credit to Axce for the idea but his code was not used. Currently experimenting with the best
way to add smoothness to views other than zoomin/left view.

CUSTOM category can be used similar to "collections" in RetroFlow, ex: to hold all your
"utility"-type apps. However, it needs upgraded to support RetroFlow entries... the upgrade
is currently in bugtesting. When done, you'll be able to add stuff to CUSTOM category via
the triangle menu.

Fixed where if it was the first time ever booting up, overrides wouldn't work on the first try.

Also includes the minor bugfix from v1.2.1 where some categories might not show up right
first time ever booting up.

Added a new button at the bottom of the start menu "Exit", as a kind of placeholder:
it'll be replaced by "Utilities" or "System Apps" when applicable.

The actual RetroFlow app might not register covers downloaded from this app if you have
startup scan OFF in actual RetroFlow. Ones downloaded in RetroFlow will always show up here
everytime due to rolling cache.

There is a bug relating to RetroFlow and "Return to Last-Played Game"... if you have 2
Retro games with the same filenames in DIFFERENT categories, it may pick the wrong one if the
last played category was "All"/"CUSTOM"

If you were using an experimental version, file "ux0/data/HexFlow/debugfile.dat" can be deleted.

Changed app title to "HexFlow Custom". If the old title still remains, it may have registered
as a "rename". You can reset it by scrolling to HexFlow Custom... pressing triangle... selecting
"rename"... and setting it to blank which will reset the title.

Added more bulletproofing to the code Category_Plus(), Category_Minus(), and categoryButton;
where you couldn't change category if you hacked "categoryButton" in config.dat to be an
invalid value and where the first time you hit the category button, it wouldn't register if
you hacked "showCat" in config.dat to have an invalid value (for forward compatability).

(Hopefully) fixed where a fresh install would lag for the first launch if Recently Played ON.

Minor bulletproofing/improvement: Only app folders with 9 characters imported, removes
duplicates or manually backed-up / renamed folders.

Upgraded Italian translations, credit DaRk_ViVi

New bugs:

When you exit the triangle menu, the modbox will slightly glitch out for about 1/60th of a
second or less in certain categories. You will easily miss it even if you're looking for it.

If you have 2 RetroFlow entries with the same base file name, then "return to last played",
the "recently played" category, and the "custom" category might display the wrong one. For
this reason, the "custom" category doesn't easily support RetroFlow entries. It will require
a huge overhaul to make it work correctly The "overhaul" also allows this app to use
"Collections" - one of the really great new features of actual RetroFlow 6.0... This
"overhaul" is already done but is in bugtesting currently.

index.lua is the source code