chippalippa
Differenze
Queste sono le differenze tra la revisione selezionata e la versione attuale della pagina.
| Entrambe le parti precedenti la revisioneRevisione precedenteProssima revisione | Revisione precedente | ||
| chippalippa [2018/12/06 21:35] – [ToDo list] giomba | chippalippa [2022/11/06 17:30] (versione attuale) – [ChippaLippa] aggiunta foto step3 giuliof | ||
|---|---|---|---|
| Linea 2: | Linea 2: | ||
| Il progetto ChippaLippa nasce nella primavera 2018 in seguito all' | Il progetto ChippaLippa nasce nella primavera 2018 in seguito all' | ||
| + | Il ChippaLippa allo step3, attualmente l' | ||
| + | {{ : | ||
| ===== Materiali acquistati ed a disposizione ===== | ===== Materiali acquistati ed a disposizione ===== | ||
| * WDC 65C02S //(versione statica del MOS 6502)// | * WDC 65C02S //(versione statica del MOS 6502)// | ||
| Linea 13: | Linea 15: | ||
| * HEF4551 (binary to sevseg) (6pz) | * HEF4551 (binary to sevseg) (6pz) | ||
| - | ===== ToDo list ===== | + | ===== Schede realizzate |
| - | * Costruire | + | * [[http:// |
| - | < | + | * [[# |
| - | * Costruire un generatore | + | * [[#Stuzzica clock|Stuzzica clock]]: estensione al clocchino per generare impulsi opportuni (si vedano le note sul clock); |
| + | * [[#Bus inspector|Bus inspector]]: | ||
| + | |||
| + | ===== Note sul clock ===== | ||
| + | |||
| + | I chip non statici (o farlocchi) permettono di mantenere il livello alto sul segnale di clock per un tempo indefinito. Per operare correttamente, | ||
| + | |||
| + | Fare riferimento allo " | ||
| + | |||
| + | ==== Clocchino ==== | ||
| + | |||
| + | Dovrebbe fare pressappoco quel che fa il clock di [[https://eater.net/ | ||
| + | |||
| + | Si tratta di un clock a duplice modalità: automatico (// | ||
| + | Le due modalità possono essere commutate "a caldo" senza la necessità di togliere l' | ||
| + | |||
| + | {{ : | ||
| + | |||
| + | ==== Stuzzica clock ==== | ||
| + | |||
| + | Necessario per adattare l' | ||
| + | Ripreso dal sito [[http:// | ||
| + | |||
| + | L' | ||
| + | Il circuito è tarato per generare impulsi inferiori ai 5μs. | ||
| + | |||
| + | {{ : | ||
| + | |||
| + | |||
| + | ==== Bus inspector ==== | ||
| + | |||
| + | TODO | ||
| + | |||
| + | ===== Step 1 - NOPNOPNOP ===== | ||
| + | {{ : | ||
| + | * Clock con 555; | ||
| + | * Bus dati bloccato a $EA (NOP); | ||
| + | * Segnali accessori bloccati a default (RDY, IRQB, NMIB, BE, SOB). | ||
| + | |||
| + | **Verifica: | ||
| + | * >=2 colpi di clock con reset; | ||
| + | * 6 colpi di clock per entrare | ||
| + | * A = 0xFFFC | ||
| + | * A = 0xFFFD (lettura vettore reset: 0xEAEA hardcoded) | ||
| + | * A = 0xEAEA | ||
| + | * A = 0xEAEB (legge NOP ed esegue) | ||
| + | * ... | ||
| + | |||
| + | ===== Step 2 - ROM + RAM ===== | ||
| + | |||
| + | * Clock con 555; | ||
| + | * una ROM; | ||
| + | * una RAM; | ||
| + | * logica di indirizzamento (74HC00 NAND, eventualmente 74HC04 NOT). | ||
| + | |||
| + | * Dump della memoria ROM TODO | ||
| + | * Disassemblato TODO | ||
| + | |||
| + | ===== Step 3 - Tastiera e display ===== | ||
| + | |||
| + | * Clock con 555; | ||
| + | * una ROM; | ||
| + | * una RAM; | ||
| + | * logica di indirizzamento (74HC00 NAND, 74HC04 NOT, 74HC139 decoder); | ||
| + | * controller tastiera 4x4 (es. 74C922); | ||
| + | * tastiera 4x4; | ||
| + | * display 16x02; | ||
| + | |||
| + | * Schematico TODO | ||
| + | * Sw di esempio TODO | ||
| + | * {{ : | ||
| + | |||
| + | ==== Mappa della memoria ==== | ||
| + | |||
| + | L' | ||
| + | |||
| + | +-------------+ | ||
| + | | | 0 | ||
| + | + + | ||
| + | | | 1 | ||
| + | + RAM 32K + | ||
| + | | | 2 | ||
| + | + + | ||
| + | | | 3 | ||
| + | +-------------+ | ||
| + | | Display | ||
| + | +-------------+ | ||
| + | | Keyboard | ||
| + | +-------------+ | ||
| + | | | 6 | ||
| + | +-------------+ | ||
| + | | ROM 8K | 7 | ||
| + | +-------------+ | ||
| + | |||
| + | |||
| + | * Display R/W command: 0x8000 (in realtà, qualsiasi indirizzo pari nel banco 0x8000-0x9FFF); | ||
| + | * Display R/W text: 0x8001 (in realtà, qualsiasi indirizzo dispari nel banco 0x8000-0x9FFF); | ||
| + | * Keyboard read: 0xA000 (qualsiasi indirizzo nel banco 0xA000-0xBFFF); | ||
| + | |||
| + | ===== Mappa della memoria (nei sogni) ===== | ||
| + | |||
| + | +-------------+ | ||
| + | | | 0 | ||
| + | + RAM 16K + | ||
| + | | bank switch | 1 | ||
| + | +-------------+ | ||
| + | |RAM 8K shared| 2 | ||
| + | +-------------+ | ||
| + | | | 3 | ||
| + | +-------------+ | ||
| + | | | 4 | ||
| + | +-------------+ | ||
| + | | | 5 | ||
| + | +-------------+ | ||
| + | | | 6 | ||
| + | +-------------+ | ||
| + | | ROM 8K | 7 | ||
| + | +-------------+ | ||
| + | |||
| + | 3-6 Input/ | ||
| + | * VIA | ||
| + | * ACIA | ||
| + | * Display | ||
| ===== Reference ===== | ===== Reference ===== | ||
| * [[https:// | * [[https:// | ||
| * [[https:// | * [[https:// | ||
| - | |||
chippalippa.1544132119.txt.gz · Ultima modifica: 2018/12/06 21:35 da giomba