Skip to content

Commit b528e94

Browse files
committed
Slight adjustments to the memory card functions
Removed the channel parameters from the custom functions, as CARD_SLOTA is the only value used. Removed closeFileAndUnmountCard, as less memory is used when this function is not used.
1 parent 1a6acd9 commit b528e94

File tree

3 files changed

+60
-66
lines changed

3 files changed

+60
-66
lines changed

ttyd-tools/rel/include/memcard.h

Lines changed: 8 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -8,20 +8,17 @@ namespace mod {
88

99
int32_t finishAsyncFunction(int32_t returnCode);
1010

11-
int32_t checkForMemoryCard(int32_t channel);
11+
int32_t checkForMemoryCard();
1212

13-
int32_t mountCard(int32_t channel);
13+
int32_t mountCard();
1414

15-
int32_t unmountCard(int32_t channel);
15+
int32_t unmountCard();
1616

17-
int32_t openFileFromCard(int32_t channel,
18-
const char *fileName, gc::card::CARDFileInfo *fileInfo);
17+
int32_t openFileFromCard(const char *fileName, gc::card::CARDFileInfo *fileInfo);
1918

2019
int32_t closeFileFromCard(gc::card::CARDFileInfo *fileInfo);
2120

22-
void closeFileAndUnmountCard(gc::card::CARDFileInfo *fileInfo, int32_t channel);
23-
24-
int32_t createFileOnCard(int32_t channel, const char *fileName,
21+
int32_t createFileOnCard(const char *fileName,
2522
uint32_t size, gc::card::CARDFileInfo *fileInfo);
2623

2724
int32_t readFromFileOnCard(gc::card::CARDFileInfo *fileInfo,
@@ -30,12 +27,11 @@ int32_t readFromFileOnCard(gc::card::CARDFileInfo *fileInfo,
3027
int32_t writeToFileOnCard(gc::card::CARDFileInfo *fileInfo,
3128
void *buffer, int32_t length, int32_t offset);
3229

33-
int32_t deleteFileOnCard(int32_t channel, const char *fileName);
30+
int32_t deleteFileOnCard(const char *fileName);
3431

35-
int32_t getFileStatus(int32_t channel, int32_t fileNum, gc::card::CARDStat *stat);
32+
int32_t getFileStatus(int32_t fileNum, gc::card::CARDStat *stat);
3633

37-
int32_t setFileStatus(int32_t channel,
38-
int32_t fileNum, gc::card::CARDStat *stat);
34+
int32_t setFileStatus(int32_t fileNum, gc::card::CARDStat *stat);
3935

4036
int32_t loadSettings(const char *settingsFileName);
4137

ttyd-tools/rel/source/draw.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -462,12 +462,12 @@ void getOnOffTextAndColor(bool valueToCheck, const char **textOut, uint32_t *col
462462
if (valueToCheck)
463463
{
464464
*textOut = "On";
465-
*colorOut = 0x1BBE23FF;
465+
*colorOut = 0x1BBE23FF; // Green
466466
}
467467
else
468468
{
469469
*textOut = "Off";
470-
*colorOut = 0xFF1414FF;
470+
*colorOut = 0xFF1414FF; // Red
471471
}
472472
}
473473

ttyd-tools/rel/source/memcard.cpp

Lines changed: 50 additions & 52 deletions
Original file line numberDiff line numberDiff line change
@@ -22,46 +22,39 @@ int32_t finishAsyncFunction(int32_t returnCode)
2222
return returnCode;
2323
}
2424

25-
int32_t checkForMemoryCard(int32_t channel)
25+
int32_t checkForMemoryCard()
2626
{
27-
return gc::card::CARDProbeEx(channel, nullptr, nullptr);
27+
return gc::card::CARDProbeEx(CARD_SLOTA, nullptr, nullptr);
2828
}
2929

30-
int32_t mountCard(int32_t channel)
30+
int32_t mountCard()
3131
{
3232
void *WorkArea = *reinterpret_cast<uint32_t **>(
3333
reinterpret_cast<uint32_t>(ttyd::cardmgr::cardMgrWorkPointer) + 0x4);
3434

35-
int32_t ReturnCode = gc::card::CARDMountAsync(channel, WorkArea, nullptr, nullptr);
35+
int32_t ReturnCode = gc::card::CARDMountAsync(CARD_SLOTA, WorkArea, nullptr, nullptr);
3636
return finishAsyncFunction(ReturnCode);
3737
}
3838

39-
int32_t unmountCard(int32_t channel)
39+
int32_t unmountCard()
4040
{
41-
return gc::card::CARDUnmount(channel);
41+
return gc::card::CARDUnmount(CARD_SLOTA);
4242
}
4343

44-
int32_t openFileFromCard(int32_t channel,
45-
const char *fileName, gc::card::CARDFileInfo *fileInfo)
44+
int32_t openFileFromCard(const char *fileName, gc::card::CARDFileInfo *fileInfo)
4645
{
47-
return gc::card::CARDOpen(channel, fileName, fileInfo);
46+
return gc::card::CARDOpen(CARD_SLOTA, fileName, fileInfo);
4847
}
4948

5049
int32_t closeFileFromCard(gc::card::CARDFileInfo *fileInfo)
5150
{
5251
return gc::card::CARDClose(fileInfo);
5352
}
5453

55-
void closeFileAndUnmountCard(gc::card::CARDFileInfo *fileInfo, int32_t channel)
56-
{
57-
closeFileFromCard(fileInfo);
58-
unmountCard(channel);
59-
}
60-
61-
int32_t createFileOnCard(int32_t channel, const char *fileName,
54+
int32_t createFileOnCard(const char *fileName,
6255
uint32_t size, gc::card::CARDFileInfo *fileInfo)
6356
{
64-
int32_t ReturnCode = gc::card::CARDCreateAsync(channel, fileName, size, fileInfo, nullptr);
57+
int32_t ReturnCode = gc::card::CARDCreateAsync(CARD_SLOTA, fileName, size, fileInfo, nullptr);
6558
return finishAsyncFunction(ReturnCode);
6659
}
6760

@@ -79,46 +72,45 @@ int32_t writeToFileOnCard(gc::card::CARDFileInfo *fileInfo,
7972
return finishAsyncFunction(ReturnCode);
8073
}
8174

82-
int32_t deleteFileOnCard(int32_t channel, const char *fileName)
75+
int32_t deleteFileOnCard(const char *fileName)
8376
{
84-
return gc::card::CARDDelete(channel, fileName);
77+
return gc::card::CARDDelete(CARD_SLOTA, fileName);
8578
}
8679

87-
int32_t getFileStatus(int32_t channel, int32_t fileNum, gc::card::CARDStat *stat)
80+
int32_t getFileStatus(int32_t fileNum, gc::card::CARDStat *stat)
8881
{
89-
return gc::card::CARDGetStatus(channel, fileNum, stat);
82+
return gc::card::CARDGetStatus(CARD_SLOTA, fileNum, stat);
9083
}
9184

92-
int32_t setFileStatus(int32_t channel,
93-
int32_t fileNum, gc::card::CARDStat *stat)
85+
int32_t setFileStatus(int32_t fileNum, gc::card::CARDStat *stat)
9486
{
95-
int32_t ReturnCode = gc::card::CARDSetStatusAsync(channel, fileNum, stat, nullptr);
87+
int32_t ReturnCode = gc::card::CARDSetStatusAsync(CARD_SLOTA, fileNum, stat, nullptr);
9688
return finishAsyncFunction(ReturnCode);
9789
}
9890

9991
int32_t loadSettings(const char *settingsFileName)
10092
{
10193
// Load the settings file
102-
int32_t ReturnCode = checkForMemoryCard(CARD_SLOTA);
94+
int32_t ReturnCode = checkForMemoryCard();
10395
if (ReturnCode != CARD_RESULT_READY)
10496
{
10597
return ReturnCode;
10698
}
10799

108100
// Mount the memory card in slot A
109-
ReturnCode = mountCard(CARD_SLOTA);
101+
ReturnCode = mountCard();
110102
if (ReturnCode != CARD_RESULT_READY)
111103
{
112104
return ReturnCode;
113105
}
114106

115107
// Open the settings file
116108
gc::card::CARDFileInfo FileInfo;
117-
ReturnCode = openFileFromCard(CARD_SLOTA, settingsFileName, &FileInfo);
109+
ReturnCode = openFileFromCard(settingsFileName, &FileInfo);
118110

119111
if (ReturnCode != CARD_RESULT_READY)
120112
{
121-
unmountCard(CARD_SLOTA);
113+
unmountCard();
122114
return ReturnCode;
123115
}
124116

@@ -130,7 +122,8 @@ int32_t loadSettings(const char *settingsFileName)
130122
if (ReturnCode != CARD_RESULT_READY)
131123
{
132124
delete[] (FileData);
133-
closeFileAndUnmountCard(&FileInfo, CARD_SLOTA);
125+
closeFileFromCard(&FileInfo);
126+
unmountCard();
134127
return ReturnCode;
135128
}
136129

@@ -164,7 +157,8 @@ int32_t loadSettings(const char *settingsFileName)
164157
ReturnCode = readFromFileOnCard(&FileInfo, MiscData, StoredFileSizeAdjusted, 0x2000);
165158

166159
// Close and unmount the card, as it's no longer needed
167-
closeFileAndUnmountCard(&FileInfo, CARD_SLOTA);
160+
closeFileFromCard(&FileInfo);
161+
unmountCard();
168162

169163
if (ReturnCode != CARD_RESULT_READY)
170164
{
@@ -223,14 +217,14 @@ int32_t writeSettings(const char *settingsDescription,
223217
const char *settingsFileName, const char *relFileName)
224218
{
225219
// Load the settings file
226-
int32_t ReturnCode = checkForMemoryCard(CARD_SLOTA);
220+
int32_t ReturnCode = checkForMemoryCard();
227221
if (ReturnCode != CARD_RESULT_READY)
228222
{
229223
return ReturnCode;
230224
}
231225

232226
// Mount the memory card in slot A
233-
ReturnCode = mountCard(CARD_SLOTA);
227+
ReturnCode = mountCard();
234228
if (ReturnCode != CARD_RESULT_READY)
235229
{
236230
return ReturnCode;
@@ -244,7 +238,7 @@ int32_t writeSettings(const char *settingsDescription,
244238

245239
// Open the settings file if it exists
246240
gc::card::CARDFileInfo FileInfo;
247-
ReturnCode = openFileFromCard(CARD_SLOTA, settingsFileName, &FileInfo);
241+
ReturnCode = openFileFromCard(settingsFileName, &FileInfo);
248242

249243
switch (ReturnCode)
250244
{
@@ -258,7 +252,8 @@ int32_t writeSettings(const char *settingsDescription,
258252
if (ReturnCode != CARD_RESULT_READY)
259253
{
260254
delete[] (FileData);
261-
closeFileAndUnmountCard(&FileInfo, CARD_SLOTA);
255+
closeFileFromCard(&FileInfo);
256+
unmountCard();
262257
return ReturnCode;
263258
}
264259

@@ -279,15 +274,15 @@ int32_t writeSettings(const char *settingsDescription,
279274
ReturnCode = closeFileFromCard(&FileInfo);
280275
if (ReturnCode != CARD_RESULT_READY)
281276
{
282-
unmountCard(CARD_SLOTA);
277+
unmountCard();
283278
return ReturnCode;
284279
}
285280

286281
// Delete the current file
287-
ReturnCode = deleteFileOnCard(CARD_SLOTA, settingsFileName);
282+
ReturnCode = deleteFileOnCard(settingsFileName);
288283
if (ReturnCode != CARD_RESULT_READY)
289284
{
290-
unmountCard(CARD_SLOTA);
285+
unmountCard();
291286
return ReturnCode;
292287
}
293288

@@ -314,7 +309,7 @@ int32_t writeSettings(const char *settingsDescription,
314309
}
315310
default:
316311
{
317-
unmountCard(CARD_SLOTA);
312+
unmountCard();
318313
return ReturnCode;
319314
}
320315
}
@@ -363,7 +358,8 @@ int32_t writeSettings(const char *settingsDescription,
363358
ReturnCode = writeToFileOnCard(&FileInfo, MiscData, FileSizeAdjusted, 0x2000);
364359

365360
delete[] (MiscData);
366-
closeFileAndUnmountCard(&FileInfo, CARD_SLOTA);
361+
closeFileFromCard(&FileInfo);
362+
unmountCard();
367363
return ReturnCode;
368364
}
369365

@@ -372,11 +368,11 @@ int32_t createSettingsFile(const char *settingsFileName,
372368
{
373369
// Get the banner and icon data from the desired REL file
374370
gc::card::CARDFileInfo FileInfo;
375-
int32_t ReturnCode = openFileFromCard(CARD_SLOTA, relFileName, &FileInfo);
371+
int32_t ReturnCode = openFileFromCard(relFileName, &FileInfo);
376372

377373
if (ReturnCode != CARD_RESULT_READY)
378374
{
379-
unmountCard(CARD_SLOTA);
375+
unmountCard();
380376
return ReturnCode;
381377
}
382378

@@ -388,7 +384,8 @@ int32_t createSettingsFile(const char *settingsFileName,
388384
if (ReturnCode != CARD_RESULT_READY)
389385
{
390386
delete[] (BannerIconData);
391-
closeFileAndUnmountCard(&FileInfo, CARD_SLOTA);
387+
closeFileFromCard(&FileInfo);
388+
unmountCard();
392389
return ReturnCode;
393390
}
394391

@@ -397,7 +394,7 @@ int32_t createSettingsFile(const char *settingsFileName,
397394
if (ReturnCode != CARD_RESULT_READY)
398395
{
399396
delete[] (BannerIconData);
400-
unmountCard(CARD_SLOTA);
397+
unmountCard();
401398
return ReturnCode;
402399
}
403400

@@ -409,23 +406,23 @@ int32_t createSettingsFile(const char *settingsFileName,
409406
uint32_t FileSizeAdjusted = (FileSize + 0x2000 - 1) & ~(0x2000 - 1);
410407

411408
// Create the new file
412-
ReturnCode = createFileOnCard(CARD_SLOTA, settingsFileName, FileSizeAdjusted, &FileInfo);
409+
ReturnCode = createFileOnCard(settingsFileName, FileSizeAdjusted, &FileInfo);
413410
if (ReturnCode != CARD_RESULT_READY)
414411
{
415412
delete[] (BannerIconData);
416-
unmountCard(CARD_SLOTA);
413+
unmountCard();
417414
return ReturnCode;
418415
}
419416

420417
// Get the stats for the new file
421418
gc::card::CARDStat CardStat;
422419
int32_t FileNumber = FileInfo.fileNum;
423420

424-
ReturnCode = getFileStatus(CARD_SLOTA, FileNumber, &CardStat);
421+
ReturnCode = getFileStatus(FileNumber, &CardStat);
425422
if (ReturnCode != CARD_RESULT_READY)
426423
{
427424
delete[] (BannerIconData);
428-
unmountCard(CARD_SLOTA);
425+
unmountCard();
429426
return ReturnCode;
430427
}
431428

@@ -437,20 +434,20 @@ int32_t createSettingsFile(const char *settingsFileName,
437434
CardStat.commentAddress = 0x2000;
438435

439436
// Set the stats for the new file
440-
ReturnCode = setFileStatus(CARD_SLOTA, FileNumber, &CardStat);
437+
ReturnCode = setFileStatus(FileNumber, &CardStat);
441438
if (ReturnCode != CARD_RESULT_READY)
442439
{
443440
delete[] (BannerIconData);
444-
unmountCard(CARD_SLOTA);
441+
unmountCard();
445442
return ReturnCode;
446443
}
447444

448445
// Open the new file
449-
ReturnCode = openFileFromCard(CARD_SLOTA, settingsFileName, settingsFileInfo);
446+
ReturnCode = openFileFromCard(settingsFileName, settingsFileInfo);
450447
if (ReturnCode != CARD_RESULT_READY)
451448
{
452449
delete[] (BannerIconData);
453-
unmountCard(CARD_SLOTA);
450+
unmountCard();
454451
return ReturnCode;
455452
}
456453

@@ -462,7 +459,8 @@ int32_t createSettingsFile(const char *settingsFileName,
462459

463460
if (ReturnCode != CARD_RESULT_READY)
464461
{
465-
closeFileAndUnmountCard(settingsFileInfo, CARD_SLOTA);
462+
closeFileFromCard(settingsFileInfo);
463+
unmountCard();
466464
}
467465

468466
return ReturnCode;

0 commit comments

Comments
 (0)