V casti 2. se pise:
Výhodou Collapse OS je fakt, že případná portace na další mikrořadiče a mikroprocesory by měla být relativně snadná..
V casti 4 je zmineno, ze asembler obsahuje pouze jadro jazyka Forth. Znamena to tedy, ze v pripade "kolapsu" by bylo mozne prezit pokud bych mel alespon jeden funkcni cip s Collapse OS? Jak bych OS na chip dostal kdybych zadny pripraveny nemel? Jak by probihal bootstrap na jiny cip a jak na cip stejneho typu? V bodu 4 se pise, ze portace na jine cipy by byla mozna, ale vysledek by byl pomaly protoze Forth? Jak bych tedy mel postupovat abych prezil?
Pro nový nebo nepodporovaný čip (když nebudete mít ROM se zavaděčem) je nutné "nějak" vytvořit právě ten zavaděč. K tomu slouží cross compilace, ale ano - musíte mít alespoň jeden připravený počítač, co to zvládá, třeba Arduino s nějakými ledkami nebo displejem, aby bylo vidět, co děláte.
V úplně mezním případě není ani zapotřebí programovat ROM (tedy spíš EEPROM nebo EPROM). Pokud je k dispozici SRAM, tak by správný bastlíř dokázal ji na jednom počítači naplnit bootstrap kódem a "zaživa" (bez výpadku napájení) ji přepojit do nového počítače.
(což je další věc, která ve světě PC už je prakticky nemožná v běžných podmínkách)
No ty historicke ne, to je pravda, myslel jsem to spis tak, ze je jednodussi mozna nalit novy BIOS do seriove flashky, nez do ((E)E)PROM.
Nicmene jde to pouzit treba pro RP2040, ESP32, apod- nicmene to uz jsou tak slozite obvody, ze po nejake apokalypse asi nebudou fungovat. Predstava ze budu nad plamenem pajet QFN56 mi prijde az skoro usmevna :-). Ale jak o tom premyslim, asi by to nakonec slo. Bud rozdelat ohen pod nejakym platem, pres kulicky cinu merit teplotu, a tu se snazit udrzet, nebo pouzit nejaky nahraty 'hrebik' jako pajecku, teplotu lze opet overit skrz kousek cinu.
Kecám, to není BASIC Stamp, ale PICAXE - https://en.wikipedia.org/wiki/PICAXE.
Resp. BASIC Stamp používá sériovou ROM, ale není to postavené na PICech.
Treba ATOMy a jine SOC dokazou tu spi adresovat "nativne" (v legacy modu, tj. pro F000:0000) - resil jsem to u zabugovaneho Avotonu - SPI flash bios je na dedikovanem SPI portu na cpu - takze to nabootuje, ale jakmile to provedl prvni LPC transakci ( out 0x80 na debug port ) tak to uz chciplo. Pokud by tam byl bios az za LPC, tak to ani nenabootuje.
No... Pokud pominu věci typu kalkulačka, tak třeba na té konzoli by bylo asi praktičtější rozchodit CP/M.
jj taky jsem si říkal + tam přihodit nějakou Luu nebo další značně ořezaný jazyk, protože Forth mi sice osobně nevadí, ale určitě to není mainstream.
Jenže autor chtěl zajistit přenositelnost a to je u CP/M problém (řešil se například přes XLT16 pro 16bit CP/M) + taky to, aby ten systém někdo někdy dokázal pochopit jako celek.
Ale ano - je to celé postavené na technologiích, které další rozšiřování spíš neumožňují nebo to celé zesložiťují.
Mne sa tento počin páči, keďže niekedy v rokoch 1986-1996 som si napísal v assembleri vlastnú implementáciu jazyka Forth, spočiatku na kamošovom ZX-Spectru, neskôr na Didaktik Gama.
U mňa to celé začalo popisom jazyka Forth, ktorý vyšiel na pokračovanie v Amatérskom Rádiu. Takže príjemná nostalgia.
Tiež som išiel podobnou cestou, väčšina bola napísaná v jazyku Forth a celé to zaberalo cca 2kB.
Okrem BASIC a assemblera som mal na kazete Pascal a C.
Editor Pascalu zaberal takmer celú dostupnú RAM a kompilovanie z kazety bola naozaj zábava, ale občas som ho využil.
C sa mi nepodarilo nikdy reálne použiť. Asi som niekde robil chybu a stackoverflow vtedy ešte nebol.
Niekde by som možno našiel zdrojáky, ale sú na 360kB diskete. Mechaniku ešte mám, ale už nemám radič FD na doske. Pamätám si že na ZX-Spectre som musel zakazovať maskované prerušenie, pretože som používal oba indexové registre (IX, IY), neskôr som kód upravil.
Jinak nesouvisí to s článkem, ale je to spíš taková blbinka, kterou mi připoměl úvodní obrázek - existuje emulátor terminálu, který má i režim vzhledu fallout - https://github.com/Swordfish90/cool-retro-term
A v něm si můžete spustit zase jinou věc a to hru fallout terminal hack. Bohužel nemůžu už najít odkaz na tu co jsem kdysi zkoušel, ale něco je třeba tady - https://github.com/jibby0/fallout-terminal-clone
Tiez mi to pride ako taka hracka co fakt nema prakticke vyuzitie. A ked uz pride apokalipsa tak mi to moc nepomoze, lebo nembudem mat aby som si ho stiahol, ani HW aby som si to skompiloval.
Ono je asi lahsie zobrat obycajny notebook s Windowsom a pripojit ho k autobaterii ako zohanat 8-bit schopny rozbehat hentu vec, ci kuchat domacu elektroniku aby som nasiel nejake STM-ko.
Ono jde o to, že autor Collapse OS předpokládá, že pokud dojde k vážným problémům, budeme potřebovat něco, co jde opravit na koleně (a to notebook není), co jde POCHOPIT a taky, aby se to dalo používat na ovládání nějakých zařízení (tedy styl Arduina).
Ona dnešní elektronika v různých zařízeních je zbytečně komplikovaná (třeba milionem čidel, které ale můžou hlásit neexistující problémy), ale mnohdy to fakt jde (když půjde do tuhého) nahradit nějakým osmibitovým mikrořadičem.
Celkove predstava nejake SHTF situace je u vetsiny lidi myslim dost 'romanticka', realitu asi nikdo nechce zazit. Stejne jako je idealizovany stredovek, prezit v nem by byl asi problem.
Vzpominam pred mnoha lety kdyz vypadl asi na tyden proud. A vezmete si, ze takhle by vypadlo uplne vsechno, vc. zasobovani. A ne na tyden, ale na rok. Uz tehdy jsme meli uplne jine starosti, treba jak pro male dite ohrat nejake jidlo, atd.
To je pravda, opravit nejde, jako žádný integrovaný obvod. Ale jde o to, že když je pravděpodobnost "odchodu" nějakého integrovaného obvodu X%, tak v případě bastl počítače se dvěma čipy to je prostě pořád malé číslo, ale u skutečného PC je to minimálně o řád horší (spíš o víc, s tím, jak tam všechny komponenty jedou na hraně kvůli co nejvyššímu výkonu).
Takový Atmel navíc nepotřebuje ani moc dalších součástek (tedy žádné vysychající kondenzátory, které musí zvládat relativně velké proudy).
[z vlastní zkušenosti - mám tady osmibitové počítače, které stále běží i po třiceti letech. Jeden tak jak došel z výroby, u druhého jsem vyměnil jen zdroj]
"[z vlastní zkušenosti - mám tady osmibitové počítače, které stále běží i po třiceti letech. Jeden tak jak došel z výroby, u druhého jsem vyměnil jen zdroj]"
Podobná zkušenost, 800XL (1984) a C64II (rok na MB nevím, ještě nebyla rozstřelka). U C64 mám i originální zdroj, ale moc mu nevěřím, jelikož se pravděpodobně nedá rozebrat a zkontrolovat/povyměňovat podezřelé součástky. Gamu jsem ještě nezkoušel, ale dle slov prodejce má být funkční. Jinak podobně i se šestnáctibity - 500+ (r.v. 1991) nebýt aku článku, nemusel bych na desku sahat. ST (1986) potřebovalo opravit zdroj, MB funkční.
C64 zdroj je zality v epoxidu a odleptat to nikam nevede. To samy zdroj k flopyne. A to ani dlato. Je lepsi si postavit novy a estetum nechat original plastovou krabicku - da se zachovat pokud clovek vynda tu epoxidovou kostku ohleduplne.
Puvodni C64 zdroj navic nebyl prilis kvalitni a nektere serie proste odchazeli a vzali s sebou nebohy osmibit. Takze byly popularni dalsi verze primo od firmy commodore nebo tretich stran - tedy hlavne v reichu ( pro prazaky neznajici prihranicni slang : v nemecku).
Je to normalni vinuty trafo s usmernovanim a pojistkou vevnitr. Dvoje napeti na sekundaru a to je vse. Myslim ze nahradni trafo jsem si tenkrat vyrabel z neceho existujiciho. Asi zvonkovy trafo a k tomu par soucastek na usmerneni nebo tak nejak.
Znovupouziti nejakeho spinaneho zdroje co uz je na trhu se meze nekladou. Verim ze dneska by to s trochou umu jelo i z kdejakeho stareho zdroje od notasu s delicem napeti.
26. 8. 2021, 17:25 editováno autorem komentáře
Právě o tom, že je zdroj nespolehlivý jsem četl. Já mám verzi pro C64 II, tedy ten by mohl snad už být vyladěný, ale stejně jej moc nechci k počítači připojovat, hlavně když jen nemůžu interně zkontrolovat. Přemýšlím, že jej uschovám tak, jak je, a pořídím/vyrobím normálně alternativu, kterou budu používat.
Tyhle zalité zdroje jsou peklo, měl jsem k 800XL, a ten po zahřátí začal dělat na výstupu šílenosti. Chtěl jsem právě použít originální box a nahradit jen střeva, ale rozdělat to bez poškození - nemožné.
Jinak zdroj k C64 je větší oříšek, než k Atari 800. Tomu totiž stačí 5V DC, což je triviální získat a kvalitní zdroje stojí pár kaček. C64 ale ještě potřebuje 9V AC, což to o něco komplikuje, protože tam musí být druhý zdroj, ještě nějaký klasický transformátor...
Tady je ale asi jeste motivace aby ta technologie prezila silnejsi radiaci. Coz u toho notasu pri te mire integrace v cipech s windows moc sance neni.
Tim hur pokud tam jsou non-ecc pameti a korunu tomu nasadi pouziti SSD.
I kdyz prakticky ten HDD muze jit do kytek diky svoji elektronice :-)
Vsude tam jsou obvody s tak vysokou integraci ze vlastne cela myslenka je hodne naivni. Tedy pri dlouhodobem provozu.
U SSD (resp cehokoliv co ma flash) je dost velke procento "soft erroru" - kdy "nevolatilni" datove struktury selzou a neni sance napravy, protoze low level pristup k disku (nebo jine veci) neni.
Mam spousty Intel SSD, ktere na tohle trpi - a to jen z duvodu, ze neni mozne provest "factory reset" na danem disku (tj. zapsat zcela vychozi struktury, ktere udelaj disk prazdnym).
Soft errory jsou vsude bezna vec a prekvapuje mne to prekvapeni :-) Pri cteni z disku, pri operaci z pameti, pri prenosu po sbernicich. Jen se obcas podivejte na interni pocitadla chyb. Servisni monitoring uz jen resi jaka je mira a jaka tendence aby se dana komponenta preventivne vymenila.
Non-ECC pameti jsou docela skvely detektor castic za par babek.
BTW: Doporucuji nepouzivat cesky prepatlany vyraz 'volatilni'. Jeho pouzivani je velmi 'incosiderabilni' a mozna by bylo nutne se 'edukovat' a 'correctnout' toto 'errorove' jednani.
Díky za článek.
Přimlouval bych se za článek o MenuetOS. http://menuetos.net/
Je to sice o pár řádů vyšší liga, ale pořád dostatečně "odchylný" případ od hlavního proudu.
To mě naopak napadá řada potenciálních smyslů. Namátkou:
* osahat si vnitřnosti jádra OS
* vykoušet si vlastní koncepty interních rutin, třeba plánovače
* minimalistický systém do virtuálu pro provoz některých aplikací a třeba DOSBox apikací
* rozvíjet myšlenku OS s minimem vrstev. Cite "The design goal has been to remove the extra layers between different parts of an OS, which normally complicate programming and create bugs."
* ...
23. 8. 2021, 17:14 editováno autorem komentáře
A co takový Collapse-Net ?
Nějaký projekt na toto téma občas zahlédnu, ale zkouší v české kotlině někdo něco takového ?
Moje představa by byla decentralizovaná síť bez autorit (i tvůj ISP je pro tebe autorita, protože tě může odstřihnout), stačili by opravdu malé rychlosti na přenos čistě textových zpráv, třeba automaticky přeposílat od baráku k baráku ( od uzlu k uzlu), všechny uzly rovnocenné, fyzických rozhranní může být více, třeba Wifi, IR, LoRa, ..... ale třeba i packet-rádio (AX25) na CB, nebo na PMR, to jsem v devadesátých letech zkoušel a fungovalo to krásně :-) přes pár dalších stanic, ze středních čech až na sever Německa.
Nebylo by to asi nic pro ty různé Facebookáře a Youtubáře, ... a podobné datové chamtivce, ani pro ty, co se rádi realizují spíš formou webových stránek než jejich obsahem, ale při scénáři zmíněném na začátku článku to může mít neocenitelnou informační hodnotu.
Špatné je na tom je jen to, že pokud se nějaká taková síť ještě provozuje tak o ní nevím.
ax25 je docela jednoduchý a hezký, ale líbilo by se mi něco více samo-propojovacího (hledajícího cesty, spojení), přitom s co možno nejjednodušším algoritmem, aby mohla být celá hromada implementací a mohl se mezi nimi rozvinout boj o přežití.
Ano, já.
Mám rozpracované zařízení, na kterém se chci naučit několi věcí, a takto bych ho následně i rád prazentoval.
- Autonomní napájení - malý integrovaný solár, baterie (a její řízení, např. i vytápění pro provoz v zimě). Konstrukce tak, aby to dokázalo žít zcela bez externích zásahů - jednak si udělání představy o tom, kolik lze takto reálně vytěžit energie, druhak vymyšlení konstrukce, která bude mít na dešti samočistící schopnost
- rádio - na úrovni protokolu mesh, na úrovni vlastního rádia buď nějaký derivát lory, nebo úplně vlastní řešení - rád bych se pokusil o podšumovou komunikaci, kdy je takové zařízení prakticky nedetekovatelné (resp. velkým výkonem je nutné přenést jenom rozpostírací kód). Zrovna včera mi přišly AT86RF215, které se na tokové experimenty docela hodí. Akorát to má problém v tom, že taková věc se bude blbě dělat low-power (vlastní modem by byl digitální v FPGA).
Akorát času je málo. Přístí zimu bych rád vyzkoušel power system prakticky rok venku.
Před nějakou dobou jsem někde narazil na odkaz na tento projekt, díval jsem se na stránky autora a zaujalo mě, že (aspoň podle toho, co tam psal) skutečně věří tomu, že kolaps nastane a na svých stránkách k tomu má i zdůvodnění. Protože Collapse OS podporuje Z80, navrhl jsem mu, ať vytvoří port na ZX Spectrum: argumentoval jsem tím, že v Evropě včetně bývalého komunistického bloku se povaluje spoustu těchto počítačů i jejich různých klonů (autor je pravděpodobně Američan a nemusí to vědět). Po pár mailech jsme došli k tomu, že když nemá reálný HW ZX Spectra, tak nemá motivaci port vytvářet, což si imho lehce protiřečí s tím, že věří tomu, že kolaps reálně nastane a musí se něco dělat... ale co už.
Na druhou stranu port pro ZX Spectrum prý existuje alespoň pro nějakou starší verzi či větev Collapse OS, která byla prý psaná v assembleru Z80.