Auto LBA docu

This commit is contained in:
jaby 2023-02-09 21:07:49 +01:00
parent 8eebd228d2
commit dbeb12bc73
1 changed files with 37 additions and 3 deletions

View File

@ -26,9 +26,43 @@ enum LBA {
```
### __Overlay__
More Text
For use with Overlays you need to include the related header file. You must place this include into the Namespace of your overlay to avoid name clash. Now the `lba` array is accessible.
```c++
namespace Overlay {
#include <PSX/Overlay/overlay_declaration.hpp>
// ...
printf("LBA: %i, Words: %i\n", lba[LBA::SYSTEM_CNF].lba, lba[LBA::SYSTEM_CNF].size_words);
// ...
__declare_overlay_header(execute, LBA);
}
```
### __Main file__
Text
For use with the main file you need to include the header file and use the `__declare_lba_header` macro with the name of your enum to create the LBA area in any file. The header allows to access the `lba` array with your enum as the index.
```c++
#include <PSX/AutoLBA/auto_lba_declaration.hpp>
// ...
printf("LBA: %i, Words: %i\n", lba[LBA::SYSTEM_CNF].lba, lba[LBA::SYSTEM_CNF].size_words);
// ...
__declare_lba_header(LBA);
```
## For CD generation
To automatically fill the LBA values `psxcdgen_ex` needs to be used.
For the main file the special XML type `Main` needs to be used while specifing the LBA file being used.
For Overlays the instruction will follow...
```xml
<Track>
<File name="SYSTEM.CNF">System.cnf</File>
<Main name="SCES_XXX.XX" lba_source="main.cpp">Application.psexe</Main>
</Track>
```