# Orao 2026 · BASIC IDE i optimizacije · JS v0.25 / Wasm v0.18

26. listopada 2026. · **evil-appliances-orao-2026-v0.25.0-update.zip** pripremljen je za upload preko **orao-2026-v0.23.0**. Raspakiraj u korijen weba uz prepisivanje priloženih datoteka. Nema brisanja. Udaljeno postavljanje nije izvršeno.

[Emulatori](index.html#emulator) · [Potpuni priručnik](versions/orao-2026-v0.25/upute.html) · [Markdown vodič](versions/orao-2026-v0.25/user-guide.md) · [Nativni ABI](versions/orao-2026-v0.25/docs/native-api-v0.24.md) · [Provjere razvoja](versions/orao-2026-v0.25/verification.json) · [JSON paketa](release-notes-orao-2026-v0.25.0.json).

Paket uključuje dosad neobjavljene JS v0.24/v0.25 i Wasm v17/v18. Zadani pogon je **Wasm v0.18**, uz ručni **Pokreni JS** za v0.25. Arhiva ima 33 JS verzije i 18 Wasm pogona. Promjena pogona resetira emulator; prethodno preuzmi radni IMG.

## BASIC IDE i nativni prevoditelj

Plavi editor u stilu Turbo okruženja ima izbornike, miš i kursor, pomicanje izvora, jednu razinu undo/redo, potvrdu odbacivanja promjena, otvaranje/spremanje izvora na VDOS i položaj greške. F5 prevodi, F9 izvršava, F4 sprema BIN, F10 otvara izbornik. Prevoditelj se izvršava na emuliranom CPU-u i proizvodi stvarne 65C832 instrukcije s grananjem i pozivima BASIC biblioteci. Pri izvođenju prevedenog programa nema parsera izvora ili bytecode petlje.

Jezik zadržava iste 63 parser ključne riječi i 26 ugrađenih funkcija. BIN zahtijeva inicijaliziranu odgovarajuću BASIC biblioteku: BLOAD/CALL na 32768, ne samostalni EXEC. Izvor ima najviše 16383 bajta, do 256 redaka po 240 bajtova; strojni kod i konstante do 16384 bajta. Datoteke u dva panela, VDOS i cijevi iz v0.23 ostaju dostupni.

## Optimizacije

Brzi put stoga i kontrole toka zadržava redoslijed sabirničkih događaja. Wasm rjeđe prelazi u JS zahvaljujući zrcaljenim registrima, a JS koristi ujednačene CPU objekte i događaje. Zajednički BASIC32 prevoditelj koristi registre, izravna grananja i blok-prijenose; IDE predmemorije i LZ4 raspakiravanje dodatno smanjuju posao CPU-a.

ROM Orla 2026 ima brže popunjavanje, tekstualni blit i commit prikaza. Audio ima tihi put uz isti protokol okvira i sačuvan aktivni mikser. BOS između provjera diska spava; dovršetak može čekati sljedeći kvant, do 1 ms emuliranog vremena. PID nakon EXEC ispisuje se deterministički nakon izlaza programa. Izvorni Orao32 ROM i njegov BASIC ostaju netaknuti.

## Mjerenja i njihove granice

| Scenarij | Pogon | Prije → poslije |
|---|---|---|
| Sustav | Rust | 4,86 → 3,25 s |
| Sustav | JS | 80,40 → 23,34 s |
| Sustav | Wasm | 26,04 → 8,65 s |
| Puni BASIC/IDE | Rust | 403,91 → 50,06 s |
| Laki BASIC/IDE | JS | 905,23 → 94,61 s |
| Laki BASIC/IDE | Wasm | 660,73 → 33,67 s |

Mjerenja razvojne runde uspoređuju JS v0.24, Wasm v17 i Rust v0.1.16 s novim verzijama. Tri izmjenična pokretanja u svježim procesima; medijani po skupinama faza, i7-12700H, Node v24.18.0. Ukupno je zbroj medijana skupina. Ovo su kontrolirani scenariji pogona bez DOM/GDI prikaza i reprodukcije zvuka, a ne FPS ili fizička latencija. Rust koristi vlastiti outline ROM, web javni ROM; uspoređuj prije/poslije unutar istog pogona.

Izlazi terminala i mediji jednaki su u svim mjernim fazama. Međukadrovi i sirovi IDE međuspremnik na granicama faza mogu se razlikovati zbog napretka iscrtavanja/obrade tipki; zasebne provjere nakon smirivanja potvrđuju jednake zaslone i spremljeni izvor. Fazna vremena unosa i listanja IDE-a zato ne treba promatrati izolirano. Puna ponovna iscrtavanja pri prijelazu IDE ↔ izvođenje i dalje su skupa.

## Provjere i očuvanje

Razvojni dokazi: 8282 JS i 8202 Rust CPU diferencijalnih slučajeva, Wasm lockstep/sustav/gosti, BASIC/IDE/Datoteke/VDOS regresije, snapshot tekst/kursor, 21 scenarij prevoditelja, jezične i stream regresije, stvarni Edge na oba pogona te 21 Rust test. Paket koristi iste testirane izvršne bajtove; prilikom pripreme dodatno se provjeravaju arhivski manifesti, reference, poveznice i portal u Edgeu na 1440 i 390 px. To nije novo pokretanje cijelog razvojnog lanca.

Sve prethodne verzije, kasete i izvorni transkript ostaju byte-identični. Povijesni lokalni statusi unutar sačuvanih verzija opisuju vrijeme razvoja; ove bilješke opisuju pripremljeni paket. Rust v0.1.17 ostaje lokalni i nije u web ZIP-u. Lokalno file:// povlačenje kaseta ostaje odgođeno.

## Paket

ZIP sadrži **357 datoteka: 13 izmjena i 344 dodataka**. Izostavljeno je 3191 nepromijenjenih datoteka; nema brisanja.

Potpuna nova focused osnovica čuva **3548 datoteka** u orao/ i reference/orao/. Nije osnovica cijelog weba. Prethodni ZIP-ovi i osnovice ostaju očuvani. Lokalni alati, testovi, fixturei, screenshotovi, Rust binarne datoteke i radne upute nisu uključeni.
