elo, załóżmy, że mam 320kb pamięci i chciałbym załadować xex o nieomal tej wielkości. W źródle robię cobie INS "dupa.raw". W jaki sposób mogę najprościej zapisać taki xex, że co 8kb będzie blok przełączający banki i kolejny ładujący następne 8kb i tak w kółko, aż załaduję całe dane?
mads daje taki mechanizm, w przykładach znajdziesz plik xms_banks.asm
ogólnie sprowadza się to do tego że piszesz kod przełączający bank, ładujesz ten kod do pamięci, potem wywołujesz go przed każdym nowym bankiem przez INI zmien_bank, po takim INI-cie występuje blok ładujący już dane od $4000 itd.
Zadałem pytanie ogólne o samą idee i akurat podałem przykład, że mam 320kb :) Tak naprawdę potrzebuję napchać grafiki do VBXE w celach developerskich - wygodnie mieć wszystko na raz w RAM/VRAM i się bawić, niż doczytywać.
Przykład bardzo fajny - dziękuję.
edit PS dla potomnych: powyższe wywody nie zmuszają nas do cięcia naszych danych w bloki 16kb - pseudo rozkaz INS pozwala na użycie offset'u i długości danych pakowanych do xex, odpowiednio manipulując tymi parametrami w danym miejscu xex'a możemy umieścić to co nam akurat potrzebne.