27. 8. 2009

Co se 128k flash v MB-02+ ?

Mám už pár měsíců ve svém MBčku 128kB flash. Proč? Proč ne!

BS-DOS a BS-ROM zaberou sotva dvě 16k stránky i s FlashBootem a krásným logem od Factora6. To máme ještě dalších šest volných stránek. Dumal jsem co s nimi a pak jsem narazil na web zabývající se Interface 2. Na něm jsou ke stažení image s různými hrami a softwarem pro tento interface. Zkusil jsem cvičně Space Raiders a emulátor Jupiter Ace, což je klon ZX-81, který místo BASICu měl v ROMce zásobníkový jazyk Forth (o Forthu si můžete přečíst tady a tady). Oboje fungovalo na jedničku. I když obraz, který přes K-Mouse interface produkuje do TV tuneru v Macu moje plusko nestojí za moc, udělal jsem video, které ukazuje první zmiňované - Space Raiders.

Kód, který spouštím na videu je opravdu hyperkomplikovaný:
ld a, 130
out (23), a
rst 0






Plánuji využít možností MB-02+ s velkou flashkou k typicky megalomanským účelům ala MB Maniax.

Již brzy...

5 komentářů:

dex řekl(a)...

Pročpak si nemůžu dát SpeccyWeb do RSS?
Věc označená jako RSS feed je kapku nefunkční.

Luděk Sladký řekl(a)...

Protoze to mas Dexi rozbity. RSS kanal je naprosto v poradku. Stejne jako Atom kanal.

Logout řekl(a)...

Dexi - podle poslednich mailu v konferenci a tvoji reakce tady doporucuji zahodit tvuj soucasny pocitac a sehnat neco funkcniho.

dex řekl(a)...

Zajímavé. Když to zkusím doma na Macu, tak to funguje. Ale v práci na Widlích to má problémy a hlásí "Ouha, požadovaná stránka http://clanky.1-2-8.net/rss.xml nebyla nalezena".

Anonymní řekl(a)...

Myslim, ze ta aktivace hry SPACE RAIDERS jde udelat i bez nutnosti spoustet nejaky strojak typu LD A,xx, OUT (23),A, RST 0. Tento kod nemusi navic vzdy fungovak jak je treba. Pred OUTem by melo byt jeste DI, ktere zajisti, ze pred RST 0 nemuze dojit k preruseni (program by skocil na IM2 ci IM1 rutinu) A IM1 nejspis nebude u techto her vubec osetrene, nebo zcela jinak. Ale ten problem s prerusenim je zanedbatelny, kdyz si vezmeme ze preruseni ma asi 70 000 taktu, jaka je sance ze se onen OUT 23,xx strefi do doby preruseni ?

Ja podobny zpusob aktivace romkovych programku provadim primo z basicu pomoci PAUSE 1:OUT 23,xx. Ted vysvetlim k cemu to je. PAUSE 1 zajisti, ze nasledujici OUT se provede hned po preruseni, takze po OUTu nehrozi, ze by CPU skakal na adresu #38 do spodnich 16kB. No a OUT 23,xx jiz prepne ZX rom do jine MBckove stranky a ... vsechny ZX48 romky maji rutinu vykonavajici basicovy OUT na stejne adrese #1E7D. Tam je instrukce OUT (C),A. Prepne se MBckova stranka do nasi a CPU pokracuje vzdy na adrese #1E7F. Takze - staci si na tuto adresu v dane strance hodit RST 0(bajt #C7) a HRA se bude automaticky sama spoustet. (Tento trik s basicovym outem vyuzivam i u DIVIDE)

Zde je patchnuty SPACE RAIDERS:
http://velesoft.speccy.cz/other/space-raiders+.zip
Tato verze je primo spustitelna i pres OUT 23,xx z basicu (netreba k tomu nahravat program z diskety)

VELESOFT