Weź pod uwagę to, że IOCB 0, 6 i 7 są rezerwowane przez BASIC na kolejno: edytor, grafikę, operacje I/O - (C)LOAD/(C)SAVE,LIST,ENTER,LPRINT. 6 otwierana jest po GRAPHICS a 7 tylko na czas wykonania operacji I/O.
GET/PUT/INPUT/PRINT realizuje się na już otwartym kanale, ale przy XIO zawsze możesz podać nazwę urządzenia (niezależnie od tego czy kanał jest otwarty czy nie) co pozwala Ci dość prosto rekonfigurować dowolne urządzenie (np. operacja RENAME dla DOS, lub parametryzacja otwieranego okna przez sterownik O: z któregoś Bajtka) albo nawet cały sterownik. Co więcej do operacji CIO można wykorzystać wszystkie ICAX1..6 (choć BASIC pozwala używać tylko ICAX1 i 2), ponieważ tylko ICAX3Z..ICAX6Z są rezerwowane dla potrzeb CIO. W takim przypadku parametry w ICAX3..ICAX6 ustawia się POKE-m w BASIC-u.
Z ciekawostek (rozmawialiśmy o tym, ale może komuś też się przyda): po RESET system (i BASIC) ma otwarty tylko IOCB #0 z edytorem E:, ale po dowolnym GRAPHICS (również GR.0) otwarty jest już #6 z S: :)
No i pamiętaj jeszcze że INPUT #16;zmienna nie wyświetla znaku ? przy wprowadzaniu.
Planujesz rezerwację pamięci na generatory znaków dla trybów tekstowych (1KB lub 512B)? Może obsługę trybu 3 ANTIC-a? I bardziej eleganckie włączanie V scrolla? Może H scroll też i operacje XIO do skrolowania zawartości ekranu z szybkim wpisywaniem brakującej linii/kolumny (np. właśnie w nazwie urządzenia)?
Edit: I jeszcze przyszło mi do głowy, że może tryb GTIA mógłby być włączany w dowolnym trybie ANTIC-a a nie tylko 9,10,11? Albo np. tryby dwuliniowe 9+11 :) Albo Avalonowa 4 z dwoma generatorami przelączanymi co wiersz?
Edit 2: Czy przy splicie będziesz miał różne zestawy kolorów dla każdego trybu?
Edit 3: Szerokość ekranu: wąski, normalny, szeroki.