PROMOS fórum

FRED - grafické vývojové prostředí => FRED - platforma XCom => Téma založeno: libor 30.01.2015, 07:05:02



Název: Větší paměťový blok
Přispěvatel: libor 30.01.2015, 07:05:02
Dobrý den,

potřebujeme velké paměťové pole v RAM (XCOM-31 512kB) cca 200kB. Je to problém? Jako globální proměnnou?


Název: Re: Větší paměťový blok
Přispěvatel: libor 30.01.2015, 07:14:07
V XCOMu nelze jednoduše udělat tak dlouhou proměnnou, protože XCOM VM používá 64kB bloky a na proměnné nemá vyhrazené tolik prostoru. Lze však využít zálohovanou paměť určenou pro Vzorky. Pokud nebudete používat Vzorky, tak lze pomocí API příkazů trap_IoMemWriteN a trap_IoMemReadN přistupovat k této oblasti paměti (384kB) přímo. Funkce má přímý přístup a používá 24bitové adresování, takže blok 384kB je souvislý (nejsou v něm 64kB oblasti).

Počáteční adresu (0x150000) lze najít v definici v modulu Vzorky:

Kód:
#define VZORKY_ADRESA 0x150000