MCS Files, g[12][mr] and on-calc
5 posts
• Page 1 of 1
- cakeisalie5
- Senior Member
-
- Posts: 102
- Joined: Sun Mar 27, 2016 10:24 am
- Location: France
- Calculators: Casio Afx 1.0, Casio fx-9860GII, Casio fx-CG50
MCS Files, g[12][mr] and on-calc
Hi! While working on libg1m, I was wondering if I had the correct vision of the thing. I know an MCS file has a group (name), a directory (name), an ID and a filename. I now know that to identify correctly a file format, I need the group and the ID (and this correlates with the fact that files are more or less grouped by the group in G[12][MR] files), and that directories are either objects manipulated by two or more apps ("$GLOBAL", "main") or app-specific files (internal name of the app, e.g. @FINANCE).
But there are some weird things that I don't yet understand: the directory name is not displayed on the main memory listing, and with the data from the G1M I extracted on a reset calculator, sometimes there are directories (like E-CON2 or MAT_VCT) that can only be hardcoded, sometimes groups are in a directory (LIST 1 and LISTFILE 1 being in the LISTFILE directory), Y=DATA is a file when it's a group with several files in the G1M archive... plenty of things going on I really don't understand.
So I was wondering:
- are the files in the G1M archive the same as on the calculator?
- what does the group name really represent, is it only here to identify the files in the G1M file? What is the on-calc equivalent?
- how does the listing work on the calculator?
Thanks in advance!
But there are some weird things that I don't yet understand: the directory name is not displayed on the main memory listing, and with the data from the G1M I extracted on a reset calculator, sometimes there are directories (like E-CON2 or MAT_VCT) that can only be hardcoded, sometimes groups are in a directory (LIST 1 and LISTFILE 1 being in the LISTFILE directory), Y=DATA is a file when it's a group with several files in the G1M archive... plenty of things going on I really don't understand.
So I was wondering:
- are the files in the G1M archive the same as on the calculator?
- what does the group name really represent, is it only here to identify the files in the G1M file? What is the on-calc equivalent?
- how does the listing work on the calculator?
Thanks in advance!

Part of the Planète Casio community (FR) - main author of Cahute
- SimonLothar
- Senior Member
-
- Posts: 605
- Joined: Sat Sep 15, 2012 6:59 am
- Location: Krautland ****
- Calculators: Casio fx-7400GII, Casio fx-7400GII (SH4), Casio fx-9750GII, Casio fx-9750GII (SH4), Casio fx-9860G, Casio fx-9860G SD, Casio fx-9860G Slim, Casio fx-9860GII SD, Casio fx-9860GII SD Power Graphic 2, Casio Classpad 330 plus, Casio fx-CG20, Casio fx-CG50, Casio Classpad fx-CP400
Re: MCS Files, g[12][mr] and on-calc
Most items which you can see with "MEMORY/F1:Main Memory" reside in the MCS. The MCS is a RAM-range starting at 88030000. Its directory starts at 88030100. The data-range starts at 88030A30, giving space for 0x93 internal main memory directory entries. Usually the MCS occupies about one 64 KiB RAM-sector. Two important items, which are displayed with "MEMORY/F1:Main Memory", are SETUP and ALPHA MEM. They are locateted elsewhere in the RAM.
If you backup the complete main memory or individual main memory items to some G1M/G2M-file, the resulting file has a different structure compared to the corresponding RAM-structure.
The naming differs, too (in some cases). F. i. "<LISTFILE>" represents the type 0x8A items of the internal MCS-directory "main".
"<STRING>" represents the type 0x85 items of the internal MCS-directory "main".
"<PROGRAM>" items reside in the internal MCS directory "system".
The way of the main memory cannot be described by a few statements. Things are not handled in a unique manner and should be discussed one by one.
If you backup the complete main memory or individual main memory items to some G1M/G2M-file, the resulting file has a different structure compared to the corresponding RAM-structure.
The naming differs, too (in some cases). F. i. "<LISTFILE>" represents the type 0x8A items of the internal MCS-directory "main".
"<STRING>" represents the type 0x85 items of the internal MCS-directory "main".
"<PROGRAM>" items reside in the internal MCS directory "system".
The way of the main memory cannot be described by a few statements. Things are not handled in a unique manner and should be discussed one by one.
I'll be back!
- cakeisalie5
- Senior Member
-
- Posts: 102
- Joined: Sun Mar 27, 2016 10:24 am
- Location: France
- Calculators: Casio Afx 1.0, Casio fx-9860GII, Casio fx-CG50
Re: MCS Files, g[12][mr] and on-calc
So if I understand well, there is a {on-calc MCS type}/{G1M MCS type, G1M group} correspondance somewhere that serves for the zipping and unzipping of G1M files, and I suppose there is an {on-calc MCS type}/{listing properties (groupable, what group to put in, ...)} correspondance somewhere else that serves for the listing... right? Have you found any related syscall/function? Oo
Part of the Planète Casio community (FR) - main author of Cahute
- SimonLothar
- Senior Member
-
- Posts: 605
- Joined: Sat Sep 15, 2012 6:59 am
- Location: Krautland ****
- Calculators: Casio fx-7400GII, Casio fx-7400GII (SH4), Casio fx-9750GII, Casio fx-9750GII (SH4), Casio fx-9860G, Casio fx-9860G SD, Casio fx-9860G Slim, Casio fx-9860GII SD, Casio fx-9860GII SD Power Graphic 2, Casio Classpad 330 plus, Casio fx-CG20, Casio fx-CG50, Casio Classpad fx-CP400
Re: MCS Files, g[12][mr] and on-calc
First thing would be the way to retrieve SETUP and ALPHA MEM from RAM.
Setup_GetInfo is syscall 0x03DC.
MCS_GetAlphaMem is syscall 0x0842.
Setup_GetInfo is syscall 0x03DC.
MCS_GetAlphaMem is syscall 0x0842.
View SETUP and ALPHA MEM: Show
I'll be back!
- SimonLothar
- Senior Member
-
- Posts: 605
- Joined: Sat Sep 15, 2012 6:59 am
- Location: Krautland ****
- Calculators: Casio fx-7400GII, Casio fx-7400GII (SH4), Casio fx-9750GII, Casio fx-9750GII (SH4), Casio fx-9860G, Casio fx-9860G SD, Casio fx-9860G Slim, Casio fx-9860GII SD, Casio fx-9860GII SD Power Graphic 2, Casio Classpad 330 plus, Casio fx-CG20, Casio fx-CG50, Casio Classpad fx-CP400
Re: MCS Files, g[12][mr] and on-calc
Next thing would be the enumeration of the MCS, the largest part of the main memory:
enumerate MCS: Show
I'll be back!
5 posts
• Page 1 of 1
Return to Calculator Hacking/Modding Discussions
Who is online
Users browsing this forum: No registered users and 15 guests