Support Overlays #2

Merged
jaby merged 48 commits from Overlay-The-Beginning_CDDrive into main 2023-04-22 09:38:32 +00:00
Owner

This PR will fully support Overlays and all the dependencies.

  • Loading of files from CD
    • Support automatic LBAs for Overlays
    • Support new improved LBA format
    • Support bit to indicate LZ4 compressed files
  • Support File types to deal with files from CD
    • Overlay files
    • Copy to memory files
    • TIM files
  • Support compressed and uncompressed files for any file type
  • Removed automatic overlay loading feature
    • Programmes have to supply a main function from now on and need to handle with overlays on there own
  • psxcdgen_ex adjusted to new changes
    • Supports lz4 compression of uncompressed files now
  • various bug fixes
This PR will fully support Overlays and all the dependencies. * Loading of files from CD * Support automatic LBAs for Overlays * Support new improved LBA format * Support bit to indicate LZ4 compressed files * Support File types to deal with files from CD * Overlay files * Copy to memory files * TIM files * Support compressed and uncompressed files for any file type * Removed automatic overlay loading feature * Programmes have to supply a main function from now on and need to handle with overlays on there own * psxcdgen_ex adjusted to new changes * Supports lz4 compression of uncompressed files now * various bug fixes
cody was assigned by jaby 2023-04-18 20:19:50 +00:00
jaby added 47 commits 2023-04-18 20:19:51 +00:00
cody approved these changes 2023-04-20 01:38:19 +00:00
cody left a comment
Collaborator

I noticed that many changes are naming changes which improve readability. I commmented on a few lines about possible issues but in general I don't see anything that stands out to me as a problem. Good Job!

I noticed that many changes are naming changes which improve readability. I commmented on a few lines about possible issues but in general I don't see anything that stands out to me as a problem. Good Job!
@ -0,0 +9,4 @@
namespace internal {
struct Screen {
static void configurate() {
static constexpr uint16_t FirstVisiblePixelH = 0x260;
Collaborator

Are these magic numbers? Generally I would prefer te see magic numbers using a define with a meaninful name.

Are these magic numbers? Generally I would prefer te see magic numbers using a define with a meaninful name.
Author
Owner

Yes this is a MagicNumber but I prefere a static constexpr over a define for the following reasons:

  • In contrast to defines a constexpr is typesafe
  • In contrast to defines a constexpr with the same name will cause a compiler error
  • In contrast to defines a constexpr will not wildly replace every occurance of it's name
  • Like defines this type is not allocating any memory, instead it is a "compile time constant"

For those safety reasons I prefere the constexpr over defines and would like to leave it like that c:

Yes this is a MagicNumber but I prefere a static constexpr over a define for the following reasons: * In contrast to defines a constexpr is typesafe * In contrast to defines a constexpr with the same name will cause a compiler error * In contrast to defines a constexpr will not wildly replace every occurance of it's name * Like defines this type is not allocating any memory, instead it is a "compile time constant" For those safety reasons I prefere the constexpr over defines and would like to leave it like that c:
Collaborator

OH I did not understand that constexpr is doing a similar task.

OH I did not understand that constexpr is doing a similar task.
cody marked this conversation as resolved
@ -0,0 +1,42 @@
pub struct BitRange {
Collaborator

is this same bits structure structure repeated between multiple projects in the same repo? if so is it important that they stay exactly in sync? It may be a candidate to lift to a support library.

is this same bits structure structure repeated between multiple projects in the same repo? if so is it important that they stay exactly in sync? It may be a candidate to lift to a support library.
Author
Owner

You were right, there was actually already a similiar Rusts struct in a helper lib. I'm pushing the changes in a bit

You were right, there was actually already a similiar Rusts struct in a helper lib. I'm pushing the changes in a bit
jaby marked this conversation as resolved
jaby added 1 commit 2023-04-20 19:01:52 +00:00
jaby requested review from cody 2023-04-20 19:03:36 +00:00
jaby removed review request for cody 2023-04-22 09:38:11 +00:00
jaby merged commit cf19595e47 into main 2023-04-22 09:38:32 +00:00
Sign in to join this conversation.
No reviewers
No Label
No Milestone
No project
No Assignees
2 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: jaby/jabyengine#2
No description provided.