Obsah
2 Cards
- Expansion card is connected via system bus.
- Every physical card will consist of
- ID - on this signal it enables its ID on data lines for Read
- 74HC245 + pullups/pulldowns, set direction and Enable connected to ID signal
- need for test, if card is present and what type it is
- more card may return same ID, if they are of same type
- I/O - basic enable for the whole card, A[0..4] select registers (may be divided between more devices) (not all must present)
- 6522 VIA - 16 regs, 2 CS - best fit - 2 may be used
- 6821 PIA - 4 regs, 3 CS - up to 4 with +1 decode
- 6850 ACIA - 2 regs, 3 CS - up to 8 with +2 decode
- budu rad, kdyz se mi podari tam tuhle trojici dostat jednou, s LEDkama a s RS obvodem ono to zabere hodně místa
- video
- zkusil jsem CompositeVideoTerminal a chodí - co dál? Cpát to tam přez sdílenou RAM?
- sdílená RAM a Arduina
- Mega umí nativně rozšířenou RAM, ale potřebuje na to extra rychlý 74AHC373, protože sdílí data a adresy
- já bych spíš použil 3 porty (2xaddr+1xdata) kde to je o něco pomalejší, ale pokud to udělám ve strojáku, pořád by to mělo být dost rychle a bez chytáků
- na základní video by asi stačila ATMEGA328p (UNO a pod.) se 2K+ RAM (text a pár fontů/spritů),
- 1334 bytů pro text 46*29, 9*128=1.128K na půl font, může být ve flash
- 2.25K na plný font
- ideál je 4K+ pro text i s uživatelským fontem (pro hry)
- na grafiku potřebuju asi 12K+ RAM (a velký datový tok při přenosech, možná 2 výměnné RAM?)
- těch sdílených by mohlo být víc, jedna (dvě) pro video, jedna pro FS, dvě pro vypalování EEPROM, libovolně rozšiřujících
- jedno arduino pro video, jiné pro FS a obecný I/O (a klidně příkazy typu I2C(123):3(45,56,78):5() - pošle 3 data, přečte 5 z dané adresy, podobně SPI, serial, PS/2 ... )
- Zajímavé obvody
- IDT7201 - FIFO - krásné, ale co s tím?