Wie in der vorigen Antwort gesagt, wirst Du hier um eine Implementierung im Assembler nicht umhin kommen. Assembler-Code is relativ leicht in Bascom einzubinden. In Deinem Fall würde ich zwei Funktionen (SUB/FUNCTION) in Bascom erstellen.

Die erste Funktion (SUB) zum Abspeichern eines Array-Wertes übernimmt 3 Parameter (Array-Dimension1, Array-Dimension2 und Wert). In der SUB selbst kannst Du die 3 Parameter übernehmen und in Assembler weiterverarbeiten, bzw. den Wert an der entsprechenden Stelle im externen SRAM ablegen.

In der zweiten Funktion (FUNCTION) zum Auslesen eines Array-Wertes werden 2 Parameter (Array-Dimension1, Array-Dimension2) übergeben. Der Assemblerteil holt den entsprechenden Wert aus dem externen SRAM und übergibt ihn als Rückgabewert für die Funktion.

Sofern die Größe einer Dimension 256 überschreitet, musst Du mit Word-Variablen für die Array-Dimension arbeiten.


Siehe dazu in der Hilfe unter MIXING Assembler with Bascom (oder so ähnlich) und dem Befehl LOADADR.