Commit Graph

283 Commits

Author SHA1 Message Date
Mateusz Faderewski
20275f5b21 Cleanup sound code 2023-08-18 20:19:20 +02:00
Mateusz Faderewski
f1649c2436 Use native sample rate for MP3 playback 2023-08-18 15:38:43 +02:00
Robin Jones
bd7e33ed71
Add features to readme. (#41)
<!--- Provide a general summary of your changes in the Title above -->

## Description
<!--- Describe your changes in detail -->
* Add notable features.
* Add check for latest SC64 firmware.

## Motivation and Context
<!--- What does this sample do? What problem does it solve? -->
<!--- If it fixes/closes/resolves an open issue, please link to the
issue here -->

## How Has This Been Tested?
<!-- (if applicable) -->
<!--- Please describe in detail how you tested your sample/changes. -->
<!--- Include details of your testing environment, and the tests you ran
to -->
<!--- see how your change affects other areas of the code, etc. -->

## Screenshots
<!-- (if appropriate): -->

## Types of changes
<!--- What types of changes does your code introduce? Put an `x` in all
the boxes that apply: -->
- [ ] Improvement (non-breaking change that adds a new feature)
- [ ] Bug fix (fixes an issue)
- [ ] Breaking change (breaking change)
- [ ] Config and build (change in the configuration and build system,
has no impact on code or features)

## Checklist:
<!--- Go over all the following points, and put an `x` in all the boxes
that apply. -->
<!--- If you're unsure about any of these, don't hesitate to ask. We're
here to help! -->
- [ ] My code follows the code style of this project.
- [ ] My change requires a change to the documentation.
- [ ] I have updated the documentation accordingly.
- [ ] I have added tests to cover my changes.
- [ ] All new and existing tests passed.

<!--- It would be nice if you could sign off your contribution by
replacing the name with your GitHub user name and GitHub email contact.
-->
Signed-off-by: GITHUB_USER <GITHUB_USER_EMAIL>
2023-08-18 01:20:53 +02:00
Mateusz Faderewski
33a1729792 Added path_push_subdir function to path 2023-08-17 22:26:18 +02:00
Mateusz Faderewski
1bdbfef8ac Added lag report feature 2023-08-17 22:24:32 +02:00
Mateusz Faderewski
cae27487b7 Update libdragon 2023-08-17 22:21:38 +02:00
Robin Jones
887d83ae5f
Improve ROM markets Enumeration (#39)
<!--- Provide a general summary of your changes in the Title above -->

## Description
<!--- Describe your changes in detail -->
Based on research and trial and error, this makes the information more
appropriate.

## Motivation and Context
<!--- What does this sample do? What problem does it solve? -->
<!--- If it fixes/closes/resolves an open issue, please link to the
issue here -->

## How Has This Been Tested?
<!-- (if applicable) -->
<!--- Please describe in detail how you tested your sample/changes. -->
<!--- Include details of your testing environment, and the tests you ran
to -->
<!--- see how your change affects other areas of the code, etc. -->

## Screenshots
<!-- (if appropriate): -->

## Types of changes
<!--- What types of changes does your code introduce? Put an `x` in all
the boxes that apply: -->
- [x] Improvement (non-breaking change that adds a new feature)
- [ ] Bug fix (fixes an issue)
- [ ] Breaking change (breaking change)
- [ ] Config and build (change in the configuration and build system,
has no impact on code or features)

## Checklist:
<!--- Go over all the following points, and put an `x` in all the boxes
that apply. -->
<!--- If you're unsure about any of these, don't hesitate to ask. We're
here to help! -->
- [ ] My code follows the code style of this project.
- [ ] My change requires a change to the documentation.
- [ ] I have updated the documentation accordingly.
- [ ] I have added tests to cover my changes.
- [ ] All new and existing tests passed.

<!--- It would be nice if you could sign off your contribution by
replacing the name with your GitHub user name and GitHub email contact.
-->
Signed-off-by: GITHUB_USER <GITHUB_USER_EMAIL>
2023-08-17 22:15:13 +02:00
Robin Jones
ed1fef88be
Fix ignored lib directory (#40)
<!--- Provide a general summary of your changes in the Title above -->

## Description
<!--- Describe your changes in detail -->
`miniz` directory was incorrectly named `miniz.c`

## Motivation and Context
<!--- What does this sample do? What problem does it solve? -->
<!--- If it fixes/closes/resolves an open issue, please link to the
issue here -->
It was not correctly ignored.

## How Has This Been Tested?
<!-- (if applicable) -->
<!--- Please describe in detail how you tested your sample/changes. -->
<!--- Include details of your testing environment, and the tests you ran
to -->
<!--- see how your change affects other areas of the code, etc. -->

## Screenshots
<!-- (if appropriate): -->

## Types of changes
<!--- What types of changes does your code introduce? Put an `x` in all
the boxes that apply: -->
- [ ] Improvement (non-breaking change that adds a new feature)
- [ ] Bug fix (fixes an issue)
- [ ] Breaking change (breaking change)
- [x] Config and build (change in the configuration and build system,
has no impact on code or features)

## Checklist:
<!--- Go over all the following points, and put an `x` in all the boxes
that apply. -->
<!--- If you're unsure about any of these, don't hesitate to ask. We're
here to help! -->
- [ ] My code follows the code style of this project.
- [ ] My change requires a change to the documentation.
- [ ] I have updated the documentation accordingly.
- [ ] I have added tests to cover my changes.
- [ ] All new and existing tests passed.

<!--- It would be nice if you could sign off your contribution by
replacing the name with your GitHub user name and GitHub email contact.
-->
Signed-off-by: GITHUB_USER <GITHUB_USER_EMAIL>
2023-08-17 22:14:22 +02:00
Mateusz Faderewski
74dd258b62 MP3 player seeking improvement 2023-08-14 22:00:14 +02:00
Mateusz Faderewski
65a7775964 Moved RTC update function outside of draw procedure
Previous implementation caused increased drawing time when RTC datetime needed update every second
2023-08-14 21:50:13 +02:00
Mateusz Faderewski
57dff16ec7 Added 30 FPS frame limiter, file list component fix, cleaned up view display/init code 2023-08-12 21:11:20 +02:00
Mateusz Faderewski
5d8ebf9200 Add PixelFX N64Digital/GEM support. (#28) 2023-08-10 22:39:26 +02:00
Mateusz Faderewski
af7705b821 Reboot procedure fixes 2023-08-10 21:25:54 +02:00
Mateusz Faderewski
ac63083089 SC64 flashcart code fixes + cleanup 2023-08-10 21:20:02 +02:00
Robin Jones
420eb8b3ff
Suppress dirty submodules in VSCode (#38)
<!--- Provide a general summary of your changes in the Title above -->

## Description
<!--- Describe your changes in detail -->
When running in a dev container, certain submodules show changes in
VSCode.
GitHub Desktop does not show them.

This PR also adds missing Submodules to the devcontainer.json
git.ignoredRepositories.

## Motivation and Context
<!--- What does this sample do? What problem does it solve? -->
<!--- If it fixes/closes/resolves an open issue, please link to the
issue here -->
Speculative fix. If there is a better way, it is welcome!

## How Has This Been Tested?
<!-- (if applicable) -->
<!--- Please describe in detail how you tested your sample/changes. -->
<!--- Include details of your testing environment, and the tests you ran
to -->
<!--- see how your change affects other areas of the code, etc. -->

## Screenshots
<!-- (if appropriate): -->

## Types of changes
<!--- What types of changes does your code introduce? Put an `x` in all
the boxes that apply: -->
- [ ] Improvement (non-breaking change that adds a new feature)
- [ ] Bug fix (fixes an issue)
- [ ] Breaking change (breaking change)
- [x] Config and build (change in the configuration and build system,
has no impact on code or features)

## Checklist:
<!--- Go over all the following points, and put an `x` in all the boxes
that apply. -->
<!--- If you're unsure about any of these, don't hesitate to ask. We're
here to help! -->
- [ ] My code follows the code style of this project.
- [ ] My change requires a change to the documentation.
- [ ] I have updated the documentation accordingly.
- [ ] I have added tests to cover my changes.
- [ ] All new and existing tests passed.

<!--- It would be nice if you could sign off your contribution by
replacing the name with your GitHub user name and GitHub email contact.
-->
Signed-off-by: GITHUB_USER <GITHUB_USER_EMAIL>
2023-08-09 20:49:10 +02:00
Robin Jones
bc335d8859
Remove libdragon build in CI (it is already performed in devcontainer) (#35)
<!--- Provide a general summary of your changes in the Title above -->

## Description
<!--- Describe your changes in detail -->
The CI uses the devcontainer to build libdragon, but that has already
occured as part of the devcontainer initialization.

## Motivation and Context
<!--- What does this sample do? What problem does it solve? -->
<!--- If it fixes/closes/resolves an open issue, please link to the
issue here -->
The CI was taking longer to build than expected.

If/when we move to native CI, we should leverage the CI which would
include:

```
      # - name: Cache libDragon build
      #   id: cache-libdragon
      #   uses: actions/cache@v3
      #   env:
      #     cache-name: cache-libdragon
      #   with:
      #     # libdragon cache files are stored in `./libdragon`
      #     path: ./libdragon
      #     key: ${{ runner.os }}-build-${{ env.cache-name }}-${{ hashFiles('./.gitmodules') }}
      #     restore-keys: |
      #       ${{ runner.os }}-build-${{ env.cache-name }}-
      #       ${{ runner.os }}-build-
      #       ${{ runner.os }}-

      # - name: Build libDragon
      #   if: ${{ steps.cache-libdragon.outputs.cache-hit != 'true' }}
      #   uses: devcontainers/ci@v0.3
      #   with:
      #     imageName: ghcr.io/polprzewodnikowy/n64flashcartmenu-devcontainer
      #     cacheFrom: ghcr.io/polprzewodnikowy/n64flashcartmenu-devcontainer
      #     push: ${{ github.repository_owner == 'Polprzewodnikowy' && 'filter' || 'never' }}
      #     refFilterForPush: refs/heads/main
      #     runCmd: |
      #        pushd libdragon
      #          ./build.sh
      #        popd
```

## How Has This Been Tested?
<!-- (if applicable) -->
<!--- Please describe in detail how you tested your sample/changes. -->
<!--- Include details of your testing environment, and the tests you ran
to -->
<!--- see how your change affects other areas of the code, etc. -->

## Screenshots
<!-- (if appropriate): -->

## Types of changes
<!--- What types of changes does your code introduce? Put an `x` in all
the boxes that apply: -->
- [ ] Improvement (non-breaking change that adds a new feature)
- [ ] Bug fix (fixes an issue)
- [ ] Breaking change (breaking change)
- [ ] Config and build (change in the configuration and build system,
has no impact on code or features)

## Checklist:
<!--- Go over all the following points, and put an `x` in all the boxes
that apply. -->
<!--- If you're unsure about any of these, don't hesitate to ask. We're
here to help! -->
- [ ] My code follows the code style of this project.
- [ ] My change requires a change to the documentation.
- [ ] I have updated the documentation accordingly.
- [ ] I have added tests to cover my changes.
- [ ] All new and existing tests passed.

<!--- It would be nice if you could sign off your contribution by
replacing the name with your GitHub user name and GitHub email contact.
-->
Signed-off-by: GITHUB_USER <GITHUB_USER_EMAIL>
2023-08-09 20:46:58 +02:00
Mateusz Faderewski
12dead7a6a Browser directory path now always include sd:/ prefix 2023-08-09 20:44:13 +02:00
Robin Jones
cf78d9a0a2
Fix readme content
Emulation header
2023-08-07 23:15:42 +01:00
Mateusz Faderewski
ce5a01ca31 Added missing dependency in Makefile 2023-08-05 18:06:40 +02:00
Robin Jones
337289904e
Add ED64 Plus (ED64P) build support (#33)
<!--- Provide a general summary of your changes in the Title above -->

## Description
The ED64 V1 Cart clones (commonly referred to as ED64 Plus) require a
different file name and are more feature limited. This PR adds them to
the build process.

## Motivation and Context
<!--- What does this sample do? What problem does it solve? -->
<!--- If it fixes/closes/resolves an open issue, please link to the
issue here -->
Someone will add it, so it might as well be me.
Hopefully some more users of them will get on board with this project.

## How Has This Been Tested?
<!-- (if applicable) -->
<!--- Please describe in detail how you tested your sample/changes. -->
<!--- Include details of your testing environment, and the tests you ran
to -->
<!--- see how your change affects other areas of the code, etc. -->

## Screenshots
<!-- (if appropriate): -->

## Types of changes
<!--- What types of changes does your code introduce? Put an `x` in all
the boxes that apply: -->
- [ ] Improvement (non-breaking change that adds a new feature)
- [ ] Bug fix (fixes an issue)
- [ ] Breaking change (breaking change)
- [x] Config and build (change in the configuration and build system,
has no impact on code or features)

## Checklist:
<!--- Go over all the following points, and put an `x` in all the boxes
that apply. -->
<!--- If you're unsure about any of these, don't hesitate to ask. We're
here to help! -->
- [ ] My code follows the code style of this project.
- [ ] My change requires a change to the documentation.
- [ ] I have updated the documentation accordingly.
- [ ] I have added tests to cover my changes.
- [ ] All new and existing tests passed.

<!--- It would be nice if you could sign off your contribution by
replacing the name with your GitHub user name and GitHub email contact.
-->
Signed-off-by: GITHUB_USER <GITHUB_USER_EMAIL>
2023-08-05 17:55:30 +02:00
Robin Jones
37162cac42
Add emulator loading and screen (#20)
<!--- Provide a general summary of your changes in the Title above -->

## Description
<!--- Describe your changes in detail -->
This PR shows a possible way forward for adding support for emulators.
Superseeds #13 

## Motivation and Context
<!--- What does this sample do? What problem does it solve? -->
<!--- If it fixes/closes/resolves an open issue, please link to the
issue here -->
The ability to load partial ROM's and/or overwrite parts of them is
required by emulators, patches and potentially gameshark/action replay.

## How Has This Been Tested?
<!-- (if applicable) -->
<!--- Please describe in detail how you tested your sample/changes. -->
<!--- Include details of your testing environment, and the tests you ran
to -->
<!--- see how your change affects other areas of the code, etc. -->

## Screenshots
<!-- (if appropriate): -->

## Types of changes
<!--- What types of changes does your code introduce? Put an `x` in all
the boxes that apply: -->
- [x] Improvement (non-breaking change that adds a new feature)
- [ ] Bug fix (fixes an issue)
- [ ] Breaking change (breaking change)
- [ ] Config and build (change in the configuration and build system,
has no impact on code or features)

## Checklist:
<!--- Go over all the following points, and put an `x` in all the boxes
that apply. -->
<!--- If you're unsure about any of these, don't hesitate to ask. We're
here to help! -->
- [x] My code follows the code style of this project.
- [ ] My change requires a change to the documentation.
- [x] I have updated the documentation accordingly.
- [ ] I have added tests to cover my changes.
- [ ] All new and existing tests passed.

<!--- It would be nice if you could sign off your contribution by
replacing the name with your GitHub user name and GitHub email contact.
-->
Signed-off-by: GITHUB_USER <GITHUB_USER_EMAIL>

---------

Co-authored-by: Mateusz Faderewski <sc@mateuszfaderewski.pl>
2023-08-05 15:56:10 +02:00
Mateusz Faderewski
558a690f3e Fix build docker image push 2023-08-05 15:47:06 +02:00
Mateusz Faderewski
1f0f8470db Fix GitHub build action on forks 2023-08-05 15:38:48 +02:00
Mateusz Faderewski
63f15e7f47 Use parallel compilation in build action 2023-08-05 02:00:28 +02:00
Mateusz Faderewski
b9f3e98771 Unused files cleanup + action libdragon build fix 2023-08-05 01:57:05 +02:00
Mateusz Faderewski
e94df07e9f Build action fix 2023-08-05 01:41:23 +02:00
Mateusz Faderewski
24c7f3db72 Build action fix 2023-08-05 01:39:58 +02:00
Mateusz Faderewski
6ba534166b Simplified build action + ROM stripping fix + Makefile fix 2023-08-05 01:37:09 +02:00
Robin Jones
8c12feb2c5
Fix load display media type (#31)
<!--- Provide a general summary of your changes in the Title above -->

## Description
<!--- Describe your changes in detail -->
* Fix load display media type
* Change Rom version to be in Metadata.
* Add Rom config struct.
* Improve market comments.
* Re-add clockrate.

## Motivation and Context
<!--- What does this sample do? What problem does it solve? -->
<!--- If it fixes/closes/resolves an open issue, please link to the
issue here -->

## How Has This Been Tested?
<!-- (if applicable) -->
<!--- Please describe in detail how you tested your sample/changes. -->
<!--- Include details of your testing environment, and the tests you ran
to -->
<!--- see how your change affects other areas of the code, etc. -->

## Screenshots
<!-- (if appropriate): -->

## Types of changes
<!--- What types of changes does your code introduce? Put an `x` in all
the boxes that apply: -->
- [x] Improvement (non-breaking change that adds a new feature)
- [x] Bug fix (fixes an issue)
- [ ] Breaking change (breaking change)
- [ ] Config and build (change in the configuration and build system,
has no impact on code or features)

## Checklist:
<!--- Go over all the following points, and put an `x` in all the boxes
that apply. -->
<!--- If you're unsure about any of these, don't hesitate to ask. We're
here to help! -->
- [ ] My code follows the code style of this project.
- [ ] My change requires a change to the documentation.
- [ ] I have updated the documentation accordingly.
- [ ] I have added tests to cover my changes.
- [ ] All new and existing tests passed.

<!--- It would be nice if you could sign off your contribution by
replacing the name with your GitHub user name and GitHub email contact.
-->
Signed-off-by: GITHUB_USER <GITHUB_USER_EMAIL>
2023-08-04 22:53:04 +02:00
Mateusz Faderewski
d36be317e1 Fixed exception on reset 2023-08-03 17:27:19 +02:00
Mateusz Faderewski
8e8f77e55b Complete rewrite of menu drawing + code cleanup + ROM cold boot fix
Uses new `rdpq_text` API for font drawing
2023-08-03 17:18:55 +02:00
Robin Jones
eb9668c721
Improve N64 ROM Database (#30)
<!--- Provide a general summary of your changes in the Title above -->

## Description
* Add documentation
* Add all header types.
* Improve fread sizeof types for maintainability.
* Update functions as needed.

## Motivation and Context
<!--- What does this sample do? What problem does it solve? -->
<!--- If it fixes/closes/resolves an open issue, please link to the
issue here -->
Maintainability and loading.

As a bonus, this adds certain info to the "file info" screen, which
unfortunately shows some info is incorrect in the N64 Brew wiki when
interigating certain ROM's.

## How Has This Been Tested?
<!-- (if applicable) -->
<!--- Please describe in detail how you tested your sample/changes. -->
<!--- Include details of your testing environment, and the tests you ran
to -->
<!--- see how your change affects other areas of the code, etc. -->

## Screenshots
<!-- (if appropriate): -->

## Types of changes
<!--- What types of changes does your code introduce? Put an `x` in all
the boxes that apply: -->
- [x] Improvement (non-breaking change that adds a new feature)
- [ ] Bug fix (fixes an issue)
- [ ] Breaking change (breaking change)
- [ ] Config and build (change in the configuration and build system,
has no impact on code or features)

## Checklist:
<!--- Go over all the following points, and put an `x` in all the boxes
that apply. -->
<!--- If you're unsure about any of these, don't hesitate to ask. We're
here to help! -->
- [ ] My code follows the code style of this project.
- [ ] My change requires a change to the documentation.
- [ ] I have updated the documentation accordingly.
- [ ] I have added tests to cover my changes.
- [ ] All new and existing tests passed.

<!--- It would be nice if you could sign off your contribution by
replacing the name with your GitHub user name and GitHub email contact.
-->
Signed-off-by: GITHUB_USER <GITHUB_USER_EMAIL>
2023-07-31 12:08:19 +02:00
Robin Jones
ae314c1411
Improve readme (#29)
<!--- Provide a general summary of your changes in the Title above -->

## Description
<!--- Describe your changes in detail -->

## Motivation and Context
<!--- What does this sample do? What problem does it solve? -->
<!--- If it fixes/closes/resolves an open issue, please link to the
issue here -->

## How Has This Been Tested?
<!-- (if applicable) -->
<!--- Please describe in detail how you tested your sample/changes. -->
<!--- Include details of your testing environment, and the tests you ran
to -->
<!--- see how your change affects other areas of the code, etc. -->

## Screenshots
<!-- (if appropriate): -->

## Types of changes
<!--- What types of changes does your code introduce? Put an `x` in all
the boxes that apply: -->
- [ ] Improvement (non-breaking change that adds a new feature)
- [ ] Bug fix (fixes an issue)
- [ ] Breaking change (breaking change)
- [ ] Config and build (change in the configuration and build system,
has no impact on code or features)

## Checklist:
<!--- Go over all the following points, and put an `x` in all the boxes
that apply. -->
<!--- If you're unsure about any of these, don't hesitate to ask. We're
here to help! -->
- [ ] My code follows the code style of this project.
- [ ] My change requires a change to the documentation.
- [ ] I have updated the documentation accordingly.
- [ ] I have added tests to cover my changes.
- [ ] All new and existing tests passed.

<!--- It would be nice if you could sign off your contribution by
replacing the name with your GitHub user name and GitHub email contact.
-->
Signed-off-by: GITHUB_USER <GITHUB_USER_EMAIL>
2023-07-30 21:30:19 +02:00
Mateusz Faderewski
25bb6f343c Fixed SD card fault display + ROM boot changes 2023-07-29 11:52:24 +02:00
Robin Jones
9f5557ff36
Add time to browser view (#22)
<!--- Provide a general summary of your changes in the Title above -->

## Description
<!--- Describe your changes in detail -->
Add time to browser view
Notes that save types could be improved.

## Motivation and Context
<!--- What does this sample do? What problem does it solve? -->
<!--- If it fixes/closes/resolves an open issue, please link to the
issue here -->
Nice to show, since there is space, and only shown if supported.

## How Has This Been Tested?
<!-- (if applicable) -->
<!--- Please describe in detail how you tested your sample/changes. -->
<!--- Include details of your testing environment, and the tests you ran
to -->
<!--- see how your change affects other areas of the code, etc. -->

## Screenshots
<!-- (if appropriate): -->

## Types of changes
<!--- What types of changes does your code introduce? Put an `x` in all
the boxes that apply: -->
- [ ] Improvement (non-breaking change that adds a new feature)
- [ ] Bug fix (fixes an issue)
- [ ] Breaking change (breaking change)
- [ ] Config and build (change in the configuration and build system,
has no impact on code or features)

## Checklist:
<!--- Go over all the following points, and put an `x` in all the boxes
that apply. -->
<!--- If you're unsure about any of these, don't hesitate to ask. We're
here to help! -->
- [ ] My code follows the code style of this project.
- [ ] My change requires a change to the documentation.
- [ ] I have updated the documentation accordingly.
- [ ] I have added tests to cover my changes.
- [ ] All new and existing tests passed.

<!--- It would be nice if you could sign off your contribution by
replacing the name with your GitHub user name and GitHub email contact.
-->
Signed-off-by: GITHUB_USER <GITHUB_USER_EMAIL>
2023-07-28 21:38:01 +02:00
Mateusz Faderewski
01ae2cef37 Added background image and ability to set it from the image viewer 2023-07-28 21:36:51 +02:00
Mateusz Faderewski
213ef7f367 SC64 load file path cleanup 2023-07-28 21:29:12 +02:00
Mateusz Faderewski
da50cd93d0 MP3 player file path clean up 2023-07-28 21:25:22 +02:00
Mateusz Faderewski
17fde21b6f PNG decode speed up 2023-07-28 21:24:47 +02:00
Mateusz Faderewski
3f08dfb6fd Cleaned up settings path 2023-07-28 21:23:15 +02:00
Mateusz Faderewski
0fd8494007 Added more fs utils 2023-07-28 21:22:40 +02:00
Mateusz Faderewski
638aafcb74 Fix CI (https://github.com/devcontainers/ci/issues/252) 2023-07-28 12:20:49 +02:00
Mateusz Faderewski
9142bf9832 PNG decoder now loads image asynchronously 2023-07-26 23:01:39 +02:00
Robin Jones
df6d9265a0
Update menu views (#19)
<!--- Provide a general summary of your changes in the Title above -->

## Description
Based on #16 this updates the other views to use RDPQ.

## Motivation and Context
<!--- What does this sample do? What problem does it solve? -->
<!--- If it fixes/closes/resolves an open issue, please link to the
issue here -->
Aligns all views and makes them easier to convert if needed.

## How Has This Been Tested?
<!-- (if applicable) -->
<!--- Please describe in detail how you tested your sample/changes. -->
<!--- Include details of your testing environment, and the tests you ran
to -->
<!--- see how your change affects other areas of the code, etc. -->

## Screenshots
<!-- (if appropriate): -->

## Types of changes
<!--- What types of changes does your code introduce? Put an `x` in all
the boxes that apply: -->
- [x] Improvement (non-breaking change that adds a new feature)
- [ ] Bug fix (fixes an issue)
- [ ] Breaking change (breaking change)
- [ ] Config and build (change in the configuration and build system,
has no impact on code or features)

## Checklist:
<!--- Go over all the following points, and put an `x` in all the boxes
that apply. -->
<!--- If you're unsure about any of these, don't hesitate to ask. We're
here to help! -->
- [ ] My code follows the code style of this project.
- [ ] My change requires a change to the documentation.
- [ ] I have updated the documentation accordingly.
- [ ] I have added tests to cover my changes.
- [ ] All new and existing tests passed.

<!--- It would be nice if you could sign off your contribution by
replacing the name with your GitHub user name and GitHub email contact.
-->
Signed-off-by: GITHUB_USER <GITHUB_USER_EMAIL>
2023-07-26 18:43:08 +02:00
Mateusz Faderewski
f235f25205 Fixed last row decoding in PNG decoder 2023-07-26 18:41:38 +02:00
Mateusz Faderewski
8d5aa4ecb1 Remove unnecessary code from SC64 flashcart module 2023-07-26 17:58:21 +02:00
Robin Jones
05bf7aeedf
Add N64 ROM boxart capability (#16)
<!--- Provide a general summary of your changes in the Title above -->

## Description
<!--- Describe your changes in detail -->
Adds the ability to show ROM boxart in the FileInfo menu.
Although later we may decide to convert PNG's or BMP's on the fly, to
start with, we only use sprite files created with mksprite (see readme).

It required an update to the libdragon submodule due to very recent
sprite functionality changes.

## Motivation and Context
<!--- What does this sample do? What problem does it solve? -->
<!--- If it fixes/closes/resolves an open issue, please link to the
issue here -->
Work towards a pretty menu.

## How Has This Been Tested?
<!-- (if applicable) -->
<!--- Please describe in detail how you tested your sample/changes. -->
<!--- Include details of your testing environment, and the tests you ran
to -->
<!--- see how your change affects other areas of the code, etc. -->
As shown in the screenshots, ~~however there is an issue when the info
screen displays for more than 30 seconds with a sprite loaded (help
required).~~

## Screenshots
<!-- (if appropriate): -->
Example Goldeneye ROM loaded:

![image](https://github.com/Polprzewodnikowy/N64FlashcartMenu/assets/11439699/65f03a06-9463-4519-a94e-00c38bf1c409)



~~Known issue (when staying on the information screen with a sprite
loaded for over 30 seconds)~~

![image](https://github.com/Polprzewodnikowy/N64FlashcartMenu/assets/11439699/fd98b39c-9534-4794-bcd5-d598f18bfd63)


## Types of changes
<!--- What types of changes does your code introduce? Put an `x` in all
the boxes that apply: -->
- [x] Improvement (non-breaking change that adds a new feature)
- [ ] Bug fix (fixes an issue)
- [ ] Breaking change (breaking change)
- [ ] Config and build (change in the configuration and build system,
has no impact on code or features)

## Checklist:
<!--- Go over all the following points, and put an `x` in all the boxes
that apply. -->
<!--- If you're unsure about any of these, don't hesitate to ask. We're
here to help! -->
- [x] My code follows the code style of this project.
- [ ] My change requires a change to the documentation.
- [x] I have updated the documentation accordingly.
- [ ] I have added tests to cover my changes.
- [ ] All new and existing tests passed.

<!--- It would be nice if you could sign off your contribution by
replacing the name with your GitHub user name and GitHub email contact.
-->
Signed-off-by: GITHUB_USER <GITHUB_USER_EMAIL>
2023-07-26 17:55:23 +02:00
Mateusz Faderewski
a7bd6f85f1 Mark src/libs folder as vendored code 2023-07-26 12:43:18 +02:00
Mateusz Faderewski
f6b5a4081c Use libcart to detect flashcart model instead of USB subsystem 2023-07-26 12:36:39 +02:00
Mateusz Faderewski
bc280c7fc6 Added image viewer menu view 2023-07-25 22:56:00 +02:00