Vítej, Host. Prosím přihlaš se nebo se zaregistruj.
07.12.2023, 18:35:30

Domů Nápověda Vyhledávání Přihlásit Registrovat
 
Fórum k produktům firmy ELSACO Kolín  

+  PROMOS fórum
|-+  FRED - grafické vývojové prostředí
| |-+  FRED - platforma XCom
| | |-+  Větší paměťový blok
0 uživatelů a 1 Host prohlíží toto téma. « předchozí další »
Stran: [1] Dolů Tisk
Autor Téma: Větší paměťový blok  (Přečteno 7314 krát)
libor
moderátor+

Příspěvků: 388



« kdy: 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?
Zaznamenáno

libor
moderátor+

Příspěvků: 388



« Odpověď #1 kdy: 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
Zaznamenáno

Stran: [1] Nahoru Tisk 
« předchozí další »
Skočit na:  


Poháněno MySQL Poháněno PHP Powered by SMF 1.1.21 | SMF © 2011, Simple Machines Validní XHTML 1.0! Validní CSS!