# Izvorni Orao32 monitor v0.6

## Korisnički zahtjev

Integriraj monitor izvornog Orla32 u ovaj build, vidim da naredbe poput "A nnnn" ne rade.

## Izvorni Orao32 monitor u v0.6

Na glavnoj stranici odaberi 07 / Orao 64 · Orao32 monitor · v0.6. Naredba A 1000 radi iz početnog PEL sistemskog monitora, a MON otvara izvorni Orao32 monitor s oznakom *. Programski parser, miniasembler i disasembler dolaze iz očuvanog ROM-a Orla32. Izvršava ih isti NMOS 6502; preglednik šalje znakove i modelira hardver.

U prethodnoj v0.5 početni SM dispatcher poznavao je samo novi popis naredbi. Dodatne zakrpe FFA3, FFA6 i FFB8 prepisivale su izvorni monitorski command loop. v0.6 vraća cijeli FFA3–FFE5 byte-identično originalu. Most za neblokirajuću tipkovnicu premješten je u originalnu ROM ispunu E6E0, a povratak u SM na FE24. Čuva originalne tablice naredbi, miniasembler, disasembler i memorijske rutine. Izvorni input frontend i echo rade preko prilagođenog čitača tipkovnice; ispis prolazi kroz nativni PEL firmware i njegove video ravnine. Demo sada za izlaz koristi FE24.

Primjer: pošalji A 1000, zatim u zasebnim redovima LDA #2A, STA 0500 i RTS. Q napušta miniasembler i vraća originalni monitor; njegov prikaz ? pri Q zadržava originalno ponašanje. X 1000 1005 ispisuje tri unesene instrukcije. U 1000 izvršava program i upisuje 2A u CPU RAM na 0500. M 0500 omogućuje pregled i izmjenu bajta; Q izlazi iz M. Sve adrese i brojevi su heksadecimalni, bez obaveznog prefiksa $. A1000 i A 1000 oba rade. Unosi velika slova.

Izvorne naredbe: A adresa je miniasembler; X početak kraj je disasembler; E početak kraj ispisuje memorijski blok; M adresa otvara interaktivnu izmjenu; C početak kraj računa sumu; F početak kraj bajt puni blok; U adresa izvršava strojni program; Q odredište početak kraj kopira blok. Q unutar A ili M služi izlasku. Originalni parser, granice blokova i pogreške zadržavaju njegova pravila. Monitor vidi aktivnu CPU memorijsku kartu; dodatne fizičke PEL banke ostaju dostupne sistemskim BANK/READ/WRITE naredbama, a adrese izvornog video i kazetnog hardvera nisu preslikane.

Vrati PEL sustav / SM šalje Q, zatim U FE24 kroz stvarni ROM ulaz; iz BASIC-a šalje EXIT. Taj gumb služi i kad je aktivan interaktivni A ili M. Ručno na promptu * koristi U FE24. PEL sistemske naredbe HELP, MEM, VIDEO, BANK, READ i WRITE pripadaju SM-u. Njihovi gumbi automatski vraćaju SM pa šalju naredbu. MON iz BASIC-a najprije izvršava EXIT pa otvara originalni monitor. BC i BW iz originalnog monitora ostaju hladni/topli BASIC ulazi; EXIT vraća PEL SM. Reset vraća početni nativni sustav.

Originalni zvučni bell nije preslikan: njegova stara adresa bila bi RAM u PEL modelu, pa je poziv utišan. Nativni demo i FE1D zvuk ostaju dostupni. Originalne kazetne, diskovne i grafičke rutine zahtijevaju zasebnu hardversku prilagodbu. Integracija Orao32 monitora nije potvrda da je povijesni PEL koristio isti monitor ili raspored rutina.

Izvor za sintaksu je [priručnik Orla, poglavlje 3](https://www.scribd.com/document/646427603/orao-manual). Binarno polazište i SHA-256 su u firmware/provenance.json. Test uspoređuje byte-identične raspone izvornog monitora i na CPU-u provjerava A/X/U, E/M/C/F/Q, uređivanje, BC/EXIT, mono/64K i kolor/256K. Apple kompatibilnost i prethodni demo provjereni su odvojeno.

## Orao demo i nativni zvuk u v0.6

Na početnoj stranici odaberi 07 / Orao 64 · Orao32 monitor · v0.6. Klikni Pokreni grafiku i melodiju ispod zaslona. Program radi u nativnom Orao/PEL modu: pokretni dijamant, traka boja i ljestvica od osam tonova. Klik pokreće i zvuk; ako browser ne dopusti reprodukciju, uključi sklopku Zvuk. Demo je ugrađen lokalno u demo/orao-demo.js, pa je uvijek dostupan i preko file:// bez mrežnog preuzimanja. Dostupni su [program](demo/orao-demo.bin), [izvorni kod](demo/build.cjs) i [podrijetlo](demo/provenance.json).

Kolor kartica bira 640×200 mono ili 640×400 s osam RGB boja. Demo sam provjerava geometriju i ponovno crta prikaz; nema resetiranja CPU-a pri ovoj promjeni. Pauza zaustavlja procesor, sliku i zakazane zvučne buffere. Nastavi vraća izvršavanje. Sklopka Zvuk utišava reprodukciju, dok program nastavlja raditi. Escape na fokusiranom zaslonu izvršava povratak u stvarni monitor i utišava demo; Reset vraća nativni monitor. Demo možeš ponovno pokrenuti istim gumbom.

Nativni zvuk u v0.4 nije bio implementiran; WebAudio i zvučni prekidač bili su dostupni samo Apple osobnosti. Pokusni jednobitni izlaz na FE1D uveden je u v0.5 i zadržan u v0.6. Pisanje bita 0 određuje razinu 0 ili 1; čitanje vraća tu razinu. Stvarni CPU pristupi s brojem ciklusa stvaraju PCM uzorke, a WebAudio ih reproducira nakon korisničkog klika. Grafika, frekvencija i tempo dolaze iz 6502 programa, bez host animacije ili melodijskog sekvencera. Nominalni takt je 2 MHz; promjena takta mijenja tempo i visinu tona. Rad crtača između tonskih nizova stvara kratke razmake. Reprodukcija pri brzom ručnom izvršavanju ograničava red buffera kako ne bi stvarala zvučni zaostatak.

FE1D je projektirana adresa za ovu rekonstrukciju, a nije podatak iz dokumentacije ni pronađeni PEL registar. Izvorni PEL zvučni sklop i ROM ostaju nepoznati. Native paddles nisu uvedeni; dostupni su u Apple kompatibilnoj osobnosti. Apple C030 zvučnik i njegova memorijska karta ostaju odvojeni od nativnog priključka.

Program ima 1283 bajta i izvršava se u RAM-u od 1000; radne varijable su 0800–0812. Prije učitavanja stvarni ROM inicijalizira konzolu, pa program može pozvati nativnu rutinu C200 za znakove. Izravno koristi pokusne FE15/16/17/19 priključke triju PEL ravnina i FE1D zvučni izlaz. Preuzeta binarna datoteka je sirovi nativni program za ovu varijantu; nije Orao32 TAP ni Apple DOS binarna datoteka. Koristi ugrađeni gumb ili API Impuls9010.loadNativeDemo().

Provjereni su stvarni CPU, crtež svih osam boja, pozitivni i negativni PCM uzorci, zakazana WebAudio reprodukcija, mono/kolor promjena, pauza, utišavanje, Escape/Reset, ponovno pokretanje, lokalni file:// i dodir na mobilnom prikazu. Apple procesor za usporedbu miruje dok radi nativni demo. Provjere funkcionalnosti ne potvrđuju povijesno PEL ožičenje.

Spremanje stanja nije dodano. Prethodne varijante, transkripti, kasete i release osnovice sačuvani su. v0.6 je lokalna dopuna; posljednja pripremljena objava ostaje v0.3.0. [Razvoj](development.md) · [Provjere](verification.json).
