11 Commits

Author SHA1 Message Date
Ahmad Abdallah 1339faa105 Fix out-of-bounds company code copy in getStatus (#225) 2026-06-06 07:41:04 -06:00
Ahmad Abdallah aa96726cde Implement CardGciFolder move assignment operator. (#210) 2026-05-24 12:30:13 -06:00
Luke Street 3643a369ad Split up configPath -> userPath/cachePath 2026-05-13 00:45:19 -06:00
Pieter-Jan Briers d61a1824ac Fix handling of Unicode paths on Windows (#166)
* Fix handling of Unicode paths on Windows

I love C++

* Reduce the amount of reinterpret_casts

* Okay? Don't commit the file CLion? Why not?

* Fix texture replacements too
2026-05-10 10:54:59 -06:00
CraftyBoss be1395c134 fix cardProbeFile not working properly with empty card directories, rename enum values in CARDFileType (#136) 2026-04-23 23:26:55 -07:00
CraftyBoss a801671643 Card gci folder update (#135)
* add ability to set path of card image before CARDInit

* begin work on updating card class to support gci folders

a lot of work will just be directly reading from whatever folder is supplied, instead of relying on an always open FileIO handle

* swap to interface system for easier code seperation, begin actually planning out logic for gci loading

* fix wrong name for func, add modified time to new gci file entry

* get gci folder working

tp seems to be happy with everything ive done, the only funcs im worried about are getSerial and getChecksum as those dont do anything atm.

* fix createFile not assigning file index to output FileHandle, CARDSetLoadType now takes an enum

* make probeCardFile a virtual func so GciFolder and RawFile can both implement their own, bit of cleanup
2026-04-23 22:39:42 -07:00
Phillip Stephens b1957f10cf Speed up writing empty blocks to memory card image. (#130)
Previously we'd write each block individually, this is extremely slow,
instead let's allocate the entirety of the dummy data and write that all at once.
This gives a considerably speed boost and prevents games from stalling at launch
2026-04-18 21:48:57 -07:00
Phillip Stephens 20a23c7d22 Fix corrupted card on init if card image didn't exist (#129) 2026-04-18 21:27:09 -07:00
CraftyBoss 5a23bcbd5e Set path of card image before CARDInit (#87)
* add ability to set path of card image before CARDInit

* add missing func to osx/linux variant of ResolveDolphinCardPath

* remove format specifiers in formatting funcs

* missed some oops

* refactor card loading to allow loading slot A and B if present

if neither slots have card images, a slot A image will be created at the save directory
this commit also changes card image names to "MemoryCardA/B.USA.raw" to fit with dolphins naming conventions (region code will always be USA unless changed in the macro, which could eventually be changed to be something in aurora config)

* only remove file name from CARDSetBasePath if not a directory
2026-04-05 23:14:15 -07:00
Irastris 9c3d4665ce Refactor CARD FileIO with on-demand handles (#77)
* Refactor CARD FileIO with on-demand handles

* Guarantee stream is flushed before closing handle
2026-03-31 20:24:20 -07:00
CraftyBoss 18cdf141cb Implement CARD API based on kabufuda (#53)
Original repository: https://github.com/AxioDL/kabufuda
Cleaned up & converted to `aurora::card`, with SDL3 file I/O.

---------

Co-authored-by: Phillip Stephens <antidote.crk@gmail.com>
Co-authored-by: Jack Andersen <jackoalan@gmail.com>
Co-authored-by: Lioncash <mathew1800@gmail.com>
Co-authored-by: Luke Street <luke@street.dev>
2026-03-10 19:49:34 -06:00