Tyfoza blog
  • Fotogalerie 
  • 3D
  • Bastlení
  • Suzuki V-Strom
  • Další témata
  • Hledat
  • Archiv
  • Napsat Tyfovi

Přenos dat mezi PC a 68k-MBC

Přenos dat (ať už textových zdrojových kódů nebo zkompilovaných binárních programů) z moderního počítače do retro počítače 68k-MBC s operačním systémem CP/M-68K představuje technickou výzvu. Terminálové emulátory a sériové linky jsou historicky navrženy primárně pro textová data, obvykle reprezentovaná 7bitovými nebo 8bitovými ASCII znaky. Pokud se přes takovou linku pokusíme odeslat surový binární soubor, nedopadne to dobře. Speciální řídící znaky obsažené v binárních datech vyvolávají nechtěné reakce operačního systému. Například byte 0x03 interpretuje systém jako přerušení (Ctrl+C), 0x1A jako konec souboru (EOF) a 0x04 jako konec vysílání (EOT). Výsledkem je poškození přenášeného souboru nebo úplný pád přenosu. Vkládání prostého textu pomocí schránky (Ctrl-V v emulátoru) je zase velmi pomalé, vyžaduje umělé vkládání pauz po každém znaku i řádku a neřeší problém s nekompatibilními znaky, jako je UTF-8 diakritika. Tradičním řešením pro bezpečný binární přenos bývaly protokoly s kontrolou chyb, jako je XMODEM nebo Kermit. Postavíme si svůj kompletní systém 68k-ser (skládající se z Python skriptu 68k-ser.py na PC a programu 68KSER.C na CP/M). Duální sériový port Základem rychlé a plynulé práce je využití obou sériových portů, kterými deska 68k-MBC (ve verzi FULL) disponuje: Port J4 (AUX): Obsahuje integrovaný sériový budič MAX323 (RS-232) a v moderním OS se typicky hlásí jako /dev/ttyUSB1. Slouží pro připojení fyzického terminálu nebo emulátoru (např. tio) a je vyhrazen pro interaktivní zadávání příkazů. Port J2 (SER1): Port v TTL logice, hlásící se typicky jako /dev/ttyUSB0. Tento port slouží výhradně jako vyhrazený datový kanál pro běh přenosových skriptů. ...

22. srpna 2026 · 28 min

Toolchain z roku 1983

Tradiční vývoj a kompilace přímo na fyzickém stroji 68k-MBC přináší zásadní zdržení. Procesor M68000 na taktu 8 MHz musí pro každý průchod překladače číst a zapisovat dočasné mezisoubory přes emulovanou SD kartu a BIOS, což prodlužuje proces kompilace na několik minut.

21. srpna 2026 · 8 min

Počítač 68k-MBC

68k-MBC of autora Just4Fun. Domácí retro jednodeskový počítač. Navazuje na předchozí autorovy projekty Z80-MBC2 (Zilog Z80) a V20-MBC (NEC V20). Počítač je postavený na Motorola 68008 (1982). Procesor původně vznikl jako levnější varianta procesoru M68k (1979) a lišil se především 8bitovou vnější sběrnicí. Díky tomu mohli výrobci navrhovat levnější hardware s použitím běžných 8bitových pamětí, řadičů a periferií. V komerční sféře tento procesor proslavil počítač Sinclair QL (1984). Projekt 68k-MBC nabízí možnost, jak si vyzkoušet oživení 16bitového počítače bez nutnosti shánět někdy už nedostupné historické součástky. Víc na hackaday.io Hardwarová architektura Architektura základní desky v plně osazené verzi je minimalistická. Skládá se ze tří hlavních integrovaných obvodů a jednoho volitelného GPIO expandéru. Srdcem počítače je 16/32bitový mikroprocesor Motorola MC68008. Uvnitř čipu se skrývá plnohodnotná 32bitová architektura s 32bitovými datovými i adresními registry, ovšem vnější datová sběrnice je pouze 8bitová. Instrukce se proto musí z paměti načítat po částech, kvůli čemuž procesor dosahuje zhruba 50–60 % výkonu své plnohodnotné varianty MC68000. Moderním prvkem je řídicí mikrokontrolér Microchip PIC18F47Q10. Tento čip plní funkci I/O subsystému, zajišťuje TTL kompatibilitu pro propojení s procesorem a obsluhuje I2C sběrnici. Zásadním způsobem usnadňuje stavbu, protože supluje roli EPROM paměti (obsahuje firmware) a stará se o bootování, díky čemuž stavitelé nepotřebují klasický programátor historických pamětí. ...

20. srpna 2026 · 19 min

Typst a převod na blog

Budou delší články na blogu K programům a projektům tvořím místy rozsáhlou dokumentaci ve formátu Typst. Takový moderní nástupce LaTeXu. Má pěknou sazbu a umí hezky matematiku. Hotový .typ umíme převést do .md pomocí pandoc. A výsledný .md soubor lze s minimálními úpravami vložit na tento blog, tedy do systému hugo. Nebudu muset odkazovat hotové PDF, ale můžu text převést do blogové příspěvku a zachovat matematickou sazbu s využitím KaTeX. Vtipné je, že jsem na Typst přešel především proto, že v něm píše výrazně komfortněji než v LyXu, který jsem používal roky. výborná přednáška o Typst Převod Typst na Markdown pandoc vstup.typ -f typst -t markdown+tex_math_dollars+pipe_tables-grid_tables-multiline_tables -o vystup.md převodní skript typ2md #!/bin/bash # Kontrola, zda byl zadán vstupní parametr if [ -z "$1" ]; then echo "Použití: $0 <soubor.typ>" exit 1 fi INPUT_FILE="$1" # Kontrola, zda vstupní soubor existuje if [ ! -f "$INPUT_FILE" ]; then echo "Chyba: Soubor '$INPUT_FILE' nebyl nalezen." exit 1 fi # Nahrazení koncovky .typ za .md OUTPUT_FILE="${INPUT_FILE%.typ}.md" echo "Převádím: $INPUT_FILE -> $OUTPUT_FILE" # Samotný převod s optimalizacemi pro Hugo (matematika + pipe tabulky) pandoc "$INPUT_FILE" \ -f typst \ -t markdown+tex_math_dollars+pipe_tables-grid_tables-multiline_tables \ -o "$OUTPUT_FILE" # Vyhodnocení výsledku if [ $? -eq 0 ]; then echo "Převod byl úspěšný!" else echo "Při převodu došlo k chybě." exit 1 fi

19. srpna 2026 · 1 min

Kalibrace DS2331

Úprava přesnosti hodin nastavením registru 0x10 (Aging Offset) pro kompenzaci stárnutí krystalu. Tester[ 1 ] mně pomohl jednoduše roztřídil moduly na ty, co nemají kompenzaci nebo mají příliš ujetou frekvenci Zůstaly moduly s funkční teplotní kompenzací a stabilní frekvencí, žel jsou frekvenčně posunuté o ±2 až ±3 ppm, což by mělo jít vyřešit. DS3231 má registr 0x10 (Aging Offset) pro kompenzaci stárnutí krystalu. Tohle laboratorní cvičení se neobejde bez přesného čítače frekvence. Měření [ mikrokontrolerem ] je dobré na relativní měření; měří přesně a opakovaně; ale na absolutní čísla to není. Je to jako měření plastovým pravítkem, které někdo nahřál a roztáhl. Měří pořád stejně přesně, ale oproti realitě je měření posunuté. Zde nastupuje 40 let starý PM6654, má rozlišení 2ns a poslední kalibrací prošel v lednu 2026. Vstup 1MΩ; Pin 32K připojen osciloskopickou sondou (nastaveno na…

4. srpna 2026 · 6 min

Tester DS3231

Zadání: Budeme přesně měřit předpokládanou frekvenci krystalu 32768,0Hz modulu [ DS3231 ]. Pak čip zahřejeme – stačí přiložit prst – dojde k teplotnímu dritfu (třeba jen 0.025Hz) tuto malinkou změnu frekvence detekujeme. Vyvoláme nucenou teplotní kompenzaci a ověříme, jestli proběhla. pico_DS3231_tester.ino [ k náhledu ] [ ke stažení ] Dílčí úkol: Přesné měření frekvence mikrokontrolerem. Procesor RP2040 s PIO stavovými automaty jako reciproční frekvenční čítač. Řešení jsem našel, ale úplně snadná cesta to nebyla viz článek [ reciproční frekvenční čítač ]. Jak oddělit zrno od plev Chceme ověřit, že křemíkové srdce DS3231 tepe na správné frekvenci a změřit, že čip má funkční teplotní kompenzaci. Potřeboval jsem přesný čas do pár drobných projektů, vylovil jsem ze šuplíku pár kusů modulů a pak jsem zjistil, že některé vůbec nejsou tak přesné jak by měly být. Ne každý čip je originál a ne…

2. srpna 2026 · 2 min

Frekvenční čítač přímý nebo reciproční?

Frekvenční čítač má změřit frekvenci vstupního signálu. Na Raspberry Pi Pico (RP2040) postavíme frekvenční čítač, který měří do 70MHz. Umí být přesný i pro frekvence menší než 100kHz. pico_citac_autorange.ino [ ke stažení ] Komunikuje přes sériový monitor. Při spuštění vyžaduje zadat hledanou frekvenci, kterou měříme, aby mohl dopočítat chybu ppm. Pokud zadáme 0, tak se spustí automatické měření, které zobrazí pouze frekvenci, kdy změří frekvenci vstupního signálu pomocí PWM periferie a pokud vychází menší než 100kHz zvolí přesnější metodu recipročního měření frekvence. hledáme 70MHz Přímé měření frekvence Obvykle si čítač frekvence představím tak, že po stanovenou dobu počítame náběžné hrany signálu a pak spočteme frekvenci. Obecně N pulzů za t sekund f = N/t. Když budeme počítat pulzy po dobu jedné sekundy, tak počet hran je roven frekvenci v Hz. Přímý frekvenční čítač pomocí…

1. srpna 2026 · 6 min

RTC DS3231

Hodiny reálného času - čip DS3231 přišel s koncem roku 2005. Obsahuje teplotní kompenzaci (TCXO) krystalu, který je součástí čipu. Uvnitř čipu je digitální teploměr. Čip neustále měří svou vlastní teplotu a na základě toho automaticky přidává nebo ubírá vnitřní kapacitu připojenou ke krystalu. Tím zajistí, aby krystal kmital na naprosto přesné frekvenci bez ohledu na teplotu okolí. P řesnost ±3,5 ppm v rozsahu -40 °C do +85 °C. V praxi to znamená maximální odchylku ±2 minuty za celý rok, což je v této cenové kategorii velmi přesné. Integrovaný teplotní senzor má přenost ±3 °C. DS3231 komunikuje po sběrnici I ²C na pevné adrese 0x68. [ datasheet ] Běžně se dají koupit levné čínské moduly ZS-042 dostupné od roku 2014 nebo HW-084 (2019). Kromě hodinové čipu obsahují i 4kB EEPROM (AT24C32) na defaultní adrese 0x57 (lze změnit). Moduly obvykle obsahují konstruční vadu při které hrozí problém…

30. července 2026 · 2 min

Montezumova pomsta na CoCo3

Vyšel port Montezumovy pomsty pro Tandy Color Computer 3 [ CoCo 3 ]. Vyžaduje 512K paměti. Podrobnosti a otisk disku ke stažení na [ montezuma.retrohome.info ] 18. června byl moc pěkný stream[ 1 ], kde se řešila i tato hra. Loni jsme si mohli s chutí zahrát režisérský sestřih[ 2 ] a letos máme nový port. Je skvělé, že ta hra stále inspiruje k portům a úpravám. ONLINE spuštění této hry v emulátoru 1) stáhneme otisk disku [ dsk ] 2) sputíme emulátor [ online ] 3) tlačítko LOAD vložím stažený disk 4) příkazy DIR (vypíše obsah diskety) LOAD “MONTREV.BAS” RUN

29. července 2026 · 1 min

Generátor krabiček pro 3D tisk

Nějakou dobu používám jednoduchý nástroj na tvorbu krabiček pro 3D tisk. Není to nic sofistikovaného, ale je to instatní a rychlé. Určitě je spousta jiných generátorů [ 1 ][ 2 ][ 3 ] v OpenSCAD, [ 4 ] v Pythonu nebo kombinace s AI, která umožní zadat popis v přirozeném jazyce[ 5 ]. V naší české kotlině máme nový webový [ krabix ], který se postupně etabluje a získává na popularitě. Žel, žádný z parametrických generátorů, co jsem vyzkoušel, nebyl úplně ideální; hlavně jsou všechny příšerně komplexní a mně pro tvorbu jednoduchých krabiček na elektroniku nezbylo než si udělat vlastní. Je ve verzi 0.2 a nemyslím, že je potřeba jít dál. Co umí takový krabičkovač Výstup v STL pro tisk, výstup ve STEP pro další úpravy v modelovacích programech. Potřebuji jen pár drobností - zadám vnitřní rozměry krabičky. Můžu přidat díry hranaté nebo kulaté, větrací otvory, text a na dně krabičky přidat…

25. července 2026 · 3 min
« Předchozí  Další  »
© 2026 Tyfoza blog · Powered by Hugo & PaperMod