Byl představen skládací telefon Commodore Callback 8020. Ani hloupý, ani chytrý. Pro fanoušky Commodore a digitálního minimalismu. Bez webového prohlížeče a sociálních sítí. S předinstalovaným WhatsAppem. S operačním systémem Sailfish OS.
V OpenBSD byla objevena 27 let stará chyba v ppp pomocí níž lze vzdáleně obejít autentifikaci. Chyba byla nahlášena 12.6. a 14.6. byla opravena. Bližší info v článku A 27-Year-Old Authentication Bypass in OpenBSD's PPP Stack.
Odpověď Evropské komise (pdf) k evropské občanské iniciativě Stop Destroying Videogames, jež je součástí hnutí Stop Killing Games: "Komise se domnívá, že v této fázi nemůže navrhnout právní povinnost zachovat hratelnost videoher poté, co přestaly být poskytovány komerčně. Důvodem jsou i stávající práva duševního vlastnictví. Podle autorského práva EU mají nositelé práv výlučná práva ke svým výtvorům. Kromě autorských práv mohou být
… více »Byl vydán Mozilla Firefox 152.0. Přehled novinek v poznámkách k vydání a poznámkách k vydání pro vývojáře. Řešeny jsou rovněž bezpečnostní chyby. Nový Firefox 152 bude brzy k dispozici také na Flathubu a Snapcraftu.
Desktopové prostředí KDE Plasma bylo vydáno ve verzi 6.7 (Mastodon). Přehled novinek i s videi a se snímky obrazovek v oficiálním oznámení. Podrobný přehled v seznamu změn.
Hříčka xsnow, která na ploše spustí sněžení, je protestware. Pokud jste v Rusku (LANG=ru), zobrazuje ukrajinské vlajky.
UBports, nadace a komunita kolem Ubuntu pro telefony a tablety Ubuntu Touch, vydala beta verzi Ubuntu Touch 24.04-2.0. Nová verze již počítá s výřezy pro fotoaparát (notch) a zaoblenými rohy displeje. Webový prohlížeče Morph přešel z Chromia 87 na Chromium 134. Do shellu Lomiri byl přidán editor snímků obrazovky.
V Praze probíhá Flock 2026, tj. konference pro přispěvatele a příznivce Fedory. Přednášky lze sledovat také na YouTube.
Node-RED (Wikipedie, GitHub), webová aplikace postavená na Node.js pro vizuální programování a propojování hardwarových zařízení, API a online služeb, byl vydán ve verzi 5.0. Přehled novinek v příspěvku na blogu.
Byla vydána nová verze 3.27.0 FreeRDP, tj. svobodné implementace protokolu RDP (Remote Desktop Protocol). Opraveno bylo 5 zranitelností.
), ale je to peklo; parsovat řádky a v nich třeba i matematické operace, kde se až výsledek "připojí" k dané instrukci, atd. Třeba separovat mezery, uvozovky, apostrofy jako vstup pro instrukci, ...
. Mám dojem, že jsem přepsal všechny instrukce z pentia datasheetu, ale pak už jsem se na emulaci ve virtuálních registrech vykašlal :-/.
Pokud chceš psát něco vlastního, tak si radši než BASH napiš parsovací funkce v C (i tam můžeš použít bitfieldy v packed struct). Ale pokud je to nějaká normální architektura a plánuješ ji rozvinout, tak si můžeš patchnout binutils a pak můžeš pracovat s objektovýma souborama. Jenom možná binutils bude asi mít problémy parsovat 8/16bit binárky.
Horší by byl překladač.
P.S. Napiš o tom hackování blog
.
Co se mi tak zdá, tak Python má docela blízko k C, tak uvidím, co dál... Každopádně chci vykutit nějaký základní (dis)assembler, pak budu pokračovat v HW CPU.
.
Python určitě nemá blízko k C
, ale pokud na to máš už nějakej template tak proč ne. Já jsem původně zavrhl bison a flex parsování (makrojazyk, který se přeloží do C, trochu těžkopádná syntaxe a vykopírování třeba řetězců lehko vede k segfaultu při chyb programátora), ale nakonec jsem se k nim rád vrátil (od perlu).
Blog klidně jen ukázky architektury
.
typedef union {
struct {
unsigned TBF:1;
unsigned RBF:1;
unsigned R_W:1;
unsigned S:1;
unsigned P:1;
unsigned D_A:1;
unsigned I2COV:1;
unsigned IWCOL:1;
unsigned ADD10:1;
unsigned GCSTAT:1;
unsigned BCL:1;
unsigned :3; //reserved
unsigned TRSTAT:1;
unsigned ACKSTAT:1;
};
} __I2C2ASTATbits_t;
Tohle vlastně definuje přímo bity v nějakém 16 bit registru. Když pak uložíš nebo načteš nějakou proměnnou třeba z binárního souboru, tak máš hned rovnou přístup k jednotlivým hodnotám.
. BTW Jaký FPGA vlastně?

Psát parser pro gramatiku ( ač jednoduchou ) není nic triviálního. Zvláště ne v bash. Podíval bych se na generátory parserů. Konkrétně na ANTLR. Tady je příklad assembleru. Má to 630 řádek z nich 1/4 jsou prázdné řádky.
Další variantou jsou pak lex/flex a yacc/bison.
Myslím, že na ten disassembler by šly tyto nástroje použít.
blabla : x y ;jestli nepůjde zjednodušit stylem:
blala: x y ;Jak budu mít trošku času, tak na to mrknu, zatím moc díky.

whitespace + identifikátor + whitespace + číslo/jmémo proměnné + whitespaceA v sekci, která tomuhle předpisu bude odpovídat získáš nějakou funkcí toho parseru to číslo nebo jméno proměnné a to použiješ pro vygenerování opkódu nebo nějaké akce (třeba EXIT u skriptu, v případě assembleru třeba vygenerování adresy návěští). U makrojazyka bison/yacc můžeš zapsat víc na řádek, oddělují se tuším znakem pajpou. Vtip je v tom, že za každej match můžeš hodit kus svého kódu. Ale řekl bych, že to bude nějak i u toho ANTLR. On je ten formát zápisu gramatiky dost jazykově nezávislý. Já používal jako úplně první seznámení seriál tady na abclinuxu "Jazyky a překladače". V případě převodu bin → asm se ale IMO parser nevyplatí.
jestli nepůjde zjednodušit stylemNo minimálně v Bisonu to zdá se projde. Jinak já to píšu stylem tak mezi:
foo: bar
| baz
;
Ještě jsem za to vynadáno nedostal.
Jen ještě nevím, co z toho vyleze, jestli JEN ověřuje syntaxi a až pak si musím ??sám?? vytvořit převod na strojový kód (hex/bin)nebo je tam další definice k hlubší analýze a převodu.Opět něco mezi
. Nejen, že to ověří syntaxi, ale v okamžiku, kdy ti to žere kus vstupu, si tam můžeš přidat kus vlastního kódu - typicky to, co právě vygeneruje stroják. Např. (zjednodušeně)
term_loop: term_loop DUTOK_PLUS term {
$$.přidej_kód(nacpi $1 na stack);
$$.přidej_kód(nacpi $2 na stack);
$$.přidej_instrukci(ADD);
}
;
Vysoce užitečný byl předmět PP, bohužel k tomu nejsou použitelná skripta. Přemýšlel jsem, že něco napíšu, ale a) jsem lama, mé znalosti jsou na úrovni toho jednosemestrálního kurzu, b) efektivně by to znamenalo udělat step-by-step návod na řešení těch úkolů, které se každý rok recyklují.
.
Jinak se hodí znalost regexpů.

)
napr: = (b'00110100'+0x17)/2 offset equ (11+0x20)*2-napr movlr 'A'+offset,r3 (nebo: movr #'a'+h'1e',r4 - křížek se používal u Motoroly, ke které mám dost blízko)výpočty udělat skrze např. 'bc' (což už mi částečně funguje, až na doplňování proměnných), tady je boj.
Anebo python, kde jsem našel jeden příklad - premiéra s Pythonem
Tiskni
Sdílej: