Enterprise Forever  |  :HUN  |  Konvertálás  |  Topic: CPC
Author Topic: CPC  (Read 93005 times)« previous next »
geco
EP addict
*
Offline Offline

Hungary

Posts: 1170




View Profile
New Posts
CPC
« Reply #75 on: 2006.June.02. 18:47:29 »

Quote from: "Zozosoft"

A színbeállítás is hasonló, itt is egy táblázatból (COLORS) vesszük elő a megfelelő EP színt, és végigírjuk az LPT 200 sorában a megfelelő paletta helyre. Mivel EP-n csak az első 8 szín választható szabadon, ezért 7-esnél nagyobb paletta érték esetén nem csinálunk semmit, a 16 színű játékokról majd Geco tanár úr tart előadást


16 szín esetén én csak annyit csináltam, hogy kiválasztottam egy olyan BIAS-t ami a legjobban hasonlított ( szerintem ) a CPC-n beállított 16 szín közül 8-hoz, és utána elkezdtem kicserélni a grafikát tartalmazó részben a színeket, hogy a végeredmény olyasmi legyen, mint CPC-n. 100%-ig nem lett ua., mert nem sikerült olyan BIAS-t kiválasztani, amiben minden szín ugyanolyan volt, mint CPC-n a 16 közül 8.
Egy kicsikét macerás játék, de a végén az sikerélmény is nagyobb volt.Smiley Exolon Esetében könnyű dolgom volt, mert az utolsó két file tartalmazta a grafikát, a főprogramban csak a csillagok kirakását kellett módosítanom, pont a színcserékből adódóan az 5-ös színnel rendelkező csillagok villogtak, ugyanúgy mint az űrhajó lámpája, CPC-n ez eredetileg a 15-ös szín volt. A lövedékek színét nem módosítottam, így az eltérő a CPC-stől.

Nagyon tetszett az előadás, pár dolgot szerintem alkalmazni is fogok, amit eddig nem, pl.:
1. a hangszóró állapotát nem változtatom, elméletileg már készen is van, EXOS hívás beolvassa a státuszát, majd porton keresztül kiírom össze OR-olva a
          BIAS-szal
2. a sikeres betöltés figyelése
3. memóriafoglalás rugalmasítása
4. Hard resetet megpróbálom elkerülni, majd meglátjuk milyen sikerrel.Smiley
Logged

Enterprise Forever
CPC
« Reply #75 on: 2006.June.02. 18:47:29 »

 Logged

Zozosoft
EP addict
*
Online Online

Hungary

Posts: 5611




View Profile WWW
New Posts
CPC
« Reply #76 on: 2006.June.02. 18:53:34 »

Quote from: "geco"
Nagyon tetszett az előadás, pár dolgot szerintem alkalmazni is fogok, amit eddig nem

Akkor már megérte ennyit írkálnom
Logged


geco
EP addict
*
Offline Offline

Hungary

Posts: 1170




View Profile
New Posts
CPC
« Reply #77 on: 2006.June.02. 20:46:24 »

Quote from: "Zozosoft"
Akkor már megérte ennyit írkálnom


Az biztos is.  wink
Logged

gafz
EP lover
*
Offline Offline

Hungary

Posts: 739




View Profile WWW
New Posts
CPC
« Reply #78 on: 2006.June.02. 23:16:18 »

"Házibarkács" átiratok Spectrumról, Amstrad-ról EP-re aránylag kevés munkával... Belegondoltatok mi meló lenne az átírás fordított irányban? Smiley Tiszteljük ezúton is az EP videochipjét! Smiley

Valami formátumba öntése az eddigi tudáshalmaznak majd holnap... ma agyilag nagyon le vagyok merülve... Sad
Logged

Enterprise Forever

gafz
EP lover
*
Offline Offline

Hungary

Posts: 739




View Profile WWW
New Posts
CPC
« Reply #79 on: 2006.June.03. 00:09:10 »

Hohó! Az első pályát ismételgeti állandóan... Valamiféle magyar nyelvű leírás leledzik valahol a játéktól? Keresőkben kicsit bezavar az azonos elnevezése a felugró ablakkal... Smiley Hogy a bumpy micsoda (azon kívül, hogy a Pop-up első kiadása 8 bites gépekre) már meg sem említem... Smiley
Logged

Enterprise Forever

Zozosoft
EP addict
*
Online Online

Hungary

Posts: 5611




View Profile WWW
New Posts
CPC
« Reply #80 on: 2006.June.03. 00:20:11 »

Quote from: "gafz"
Hohó! Az első pályát ismételgeti állandóan... Valamiféle magyar nyelvű leírás leledzik valahol a játéktól? Keresőkben kicsit bezavar az azonos elnevezése a felugró ablakkal... Smiley


Nem lehet, hogy azért, mert meghalsz?

PC-n is Bumpy néven futott. XT-n játszottunk sokat vele, késöbbi gépeken egyre játszhatatlanabbul gyorsabb lett

Össze kell szedni az összes cuccot a pályán, akkor jön elő a kijárat, amibe beleugorva jön a következő pálya. Az első pályán a bal felső sarokban lesz ez.
Ja és ugrálni is lehet (sőt kell Smiley ) a bogyóval, ez egy olyan CPC gomb volt, aminek nincs megfelelője EP-n, így az ALT-ra jutott legalább nem a szegény sokat szenvedett SPACE lesz kinozva
Logged


gafz
EP lover
*
Offline Offline

Hungary

Posts: 739




View Profile WWW
New Posts
CPC
« Reply #81 on: 2006.June.03. 11:51:21 »



Itt még nem készült el a színkonverzió? Vagy ilyen a "valóságban" is? Smiley
Amúgy játékállás-mentés ill. highscore-mentés nincs? Ha nincs, nem is lesz? Smiley (bocsánat, telhetetlen vagyok...  ds_icon_redface )
Logged

Enterprise Forever

Zozosoft
EP addict
*
Online Online

Hungary

Posts: 5611




View Profile WWW
New Posts
CPC
« Reply #82 on: 2006.June.03. 12:28:00 »

Quote from: "gafz"
tt még nem készült el a színkonverzió? Vagy ilyen a "valóságban" is? Smiley

CPC-n is ilyen gondolom pár pályánként változik a színösszeállítás, hogy ne legyen olyan uncsi...
Logged


Zozosoft
EP addict
*
Online Online

Hungary

Posts: 5611




View Profile WWW
New Posts
CPC
« Reply #83 on: 2006.June.03. 12:34:26 »

Quote from: "gafz"
Amúgy játékállás-mentés ill. highscore-mentés nincs? Ha nincs, nem is lesz? Smiley (bocsánat, telhetetlen vagyok...  ds_icon_redface )

nincs
majd meglátjuk azt viszonylag könnyen meg lehet csinálni, amit a Spectrum Emulátornál is: billentyű figyelési rutinba belerakni egy spéci kombináció figyelését, és ekkor kimenteni a teljes használt memóriát.
Logged


gafz
EP lover
*
Offline Offline

Hungary

Posts: 739




View Profile WWW
New Posts
CPC
« Reply #84 on: 2006.June.03. 12:34:26 »

Na a harmadik "szint" megint kék Smiley
Logged

Enterprise Forever

Zozosoft
EP addict
*
Online Online

Hungary

Posts: 5611




View Profile WWW
New Posts
CPC
« Reply #85 on: 2006.June.03. 13:34:56 »

Itt az aktuális változat, a fő fejlődés, hogy a csillagos betöltő már zenél
Azonkívül ki lett javítva, hogy akkor is örökélet van, ha nem kérjük a kérdés után a válasznak megfelelően 0003,0004 címekre rakott nullákat. Mivel ez EP-n nem használt cím, így itt eleve nullák voltak, ami azt okozta, hogy mindenképpen örökélet lett. Mondjuk anélkül szerintem max a harmadik pályáig lehet eljutni és most még le is van lassulva egy kicsit az eredetihez képest!
Meg voltak még kisebb javítások, hogy EXOS 2.0 kompatibilis legyen értelme nincs sok, de így szebb

* popup-ep.zip (71.91 KB - downloaded 74 times.)
Logged


Zozosoft
EP addict
*
Online Online

Hungary

Posts: 5611




View Profile WWW
New Posts
« Reply #86 on: 2006.June.03. 15:16:11 »

De mitől is zenél a csillagos betöltő?
Attól, hogy a közvetlen port műveleteket kicseréltük a Geco-tól kapott rutinra amit ha jól sejtem egy Spectrum 128K program átíratából szedett ki
Mondjuk fogalmam sincs hogy mit csinál, lényeg az, hogy működik. A funkciója az, hogy az eredetileg egy megadott AY register irásának az eredményét szimulálja a DAVE-el.
Elöször is lássuk, hogy néz ki CPC eredetiben egy ilyen register írás, a POPUP.000 fáljban 75B9H-tól helyezkedett el egy ilyen. (Ez fut a megszakítási rutinban.)

[asm]L75B9           LD   HL,78B6H
                LD   D,0BH
L75BE           LD   E,(HL)
                LD   B,0F4H
                OUT  (C),D
                LD   BC,0F600H
                OUT  (C),C
                LD   A,0C0H
                OUT  (C),A
                OUT  (C),C
                LD   B,0F4H
                OUT  (C),E
                LD   B,0F6H
                ADD  A,A
                OUT  (C),A
                OUT  (C),C
                DEC  HL
                DEC  D
                JP   P,L75BE
                RET[/asm]

Az LD B,0F4H utasítástól DEC HL elötti OUT-ig történik 1 azaz egy! darab AY regiszter írása! Normális HW-en az ilyesmihez elegendő egy darab OUT utasítás is
A regiszter száma a D-ben van, az ciklikusan csökken, az írandó adatot a HL-el címzet táblázatból veszi. Tehát az R11-től lefelé végig írkálja az összes AY regisztert.
Közvetlen ezután található egy másik port piszkáló rutin:
[asm]
L75DF           LD   DE,0D00H
L75E2           CALL L75EC
                DEC  D
                JP   P,L75E2
                LD   DE,L073F
L75EC           LD   B,0F4H
                OUT  (C),D
                LD   BC,0F600H
                OUT  (C),C
                LD   A,0C0H
                OUT  (C),A
                OUT  (C),C
                LD   B,0F4H
                OUT  (C),E
                LD   B,0F6H
                ADD  A,A
                OUT  (C),A
                OUT  (C),C
                RET
[/asm]
Az egy darab AY regiszter írására szolgáló részt ugye most már mindenki felismeri megnézve a ciklust, látható, hogy R13-tól lefelé az összes regiszter nullázza, végül az R7-et 3FH-ra állítja. Elég könnyen ki lehet találni, hogy ez egy hang reset rutin lesz

Geco-tól kapott rutin bekerült a betöltőbe, PORTOUT címen, ennek a címét induláskor B900H-ra helyezzük el.
Az első program rész így módosul:
[asm]
L75B9           LD   HL,78B6H
                LD   D,0BH
                LD   E,(HL)
                LD   A,D
                LD   C,E
                CALL 0B900H
                NOP
                ...
                NOP
                RET
[/asm]
Ezután már zenélni fog
A második, hang reset program részt egy olyanra cseréljük, ami nulláza a DAVE összes hang portját.
[asm]
L75DF           LD   BC,10AFH
                XOR A
L75E3           OUT (C),A
                DEC D
                DJNZ L75E3
                NOP
                ...
                NOP
                RET
[/asm]
Ezután pedig el kéne hallgatnia kilépéskor... de nem teszi, az utolsó hang tutul továbbra is... ami nem véletlen, mert hiába van ez a hang reset rutin itt, soha nem kerül meghívásra...
Megnézve, hogy mi történik továbblépésnél, a 8A70H címen található egy ilyen:
[asm]
               LD  HL,8A23H
               CALL 0BCDDH
               CALL 0BCA7H
[/asm]
Az első két utasítás a felhasználói megszakitási rutint láncolja ki, ez már le van kezelve a betöltőnkben.
A második CALL viszont a ROM hang reset rutinja! Olyanunk még nincs... Ezt a CALL-t átírva 75DFH-ra, máris működésbe lép az imént átírt hang reset rutin, és innentől elmarad a végtelen tutulás
Logged


Zozosoft
EP addict
*
Online Online

Hungary

Posts: 5611




View Profile WWW
New Posts
CPC
« Reply #87 on: 2006.June.03. 21:29:40 »

Na már varászoltam szöveget a kezdőképernyőre
A karakter kiírás ROM hívásról lemondtam, elkezdtem kiszedegetni a ROM-ból, de amikor már vagy 5 oldalnyi programlista gyűlt össze, és még mindig újabb alrutinhívásokat találtam, akkor inkább hagytam a fenébe...
Így inkább csináltam 4 színű grafikus lapon szöveget, kimentettem a szükséges bájtkupacot, amit odacsaptam a .000 végére. A francia szöveg kiírásának helyére meg oda tettem egy másoló rutint, ami beteszi a képernyő memóriába. Mondjuk ez se olyan egyszerű a CPC "érdekes" kép tárolása miatt...
Ime a rutin, ami a sima egyszerű grafikus adatot szétszórja a megfelelő formába:
[asm]                LD HL,8C00H
                LD IX,0C000H+18*80
                LD A,4*9
                LD B,5
CIK1            PUSH BC
                PUSH IX
                LD B,8
CIK2            PUSH BC
                PUSH IX
                POP DE
                LD BC,80
                OR A
                JR Z,CIK3
                LDIR
                DEC A
CIK3            LD BC,800H
                ADD IX,BC
                POP BC
                DJNZ CIK2
                POP IX
                LD BC,80
                ADD IX,BC
                POP BC
                DJNZ CIK1[/asm]

* popup-ep.zip (72.56 KB - downloaded 72 times.)
Logged


MrPrise
Administrator
EP addict
*
Offline Offline

Hungary

Posts: 2291




View Profile WWW
New Posts
CPC
« Reply #88 on: 2006.June.03. 22:24:22 »

Quote from: "Zozosoft"
Quote from: "geco"
Nagyon tetszett az előadás, pár dolgot szerintem alkalmazni is fogok, amit eddig nem

Akkor már megérte ennyit írkálnom

Naná hogy meg! Köszi! smt023
Logged

Zozosoft
EP addict
*
Online Online

Hungary

Posts: 5611




View Profile WWW
New Posts
CPC
« Reply #89 on: 2006.June.04. 01:13:53 »

Próbálom kigyűjteni a hang rutinokat a CPC ROM-ból, nagyja már úgy tünik meg van, de valami még el lehet dugva az IRQ rutinban is... a leírás szerint van egy 100Hz-es megszakítás a hang keltéshez. Hogy ez hol kezelődik, azt még nem lelem...

* soundrom.asm (21.27 KB - downloaded 63 times.)
Logged


Enterprise Forever
CPC
« Reply #89 on: 2006.June.04. 01:13:53 »

 Logged
Tags:
Enterprise Forever  |  :HUN  |  Konvertálás  |  Topic: CPC

Powered by SMF 1.1.2 | SMF © 2006-2007, Simple Machines LLC
Seo4Smf v0.2 © Webmaster's Talks

Template made by Mr.Prise
Page created in 0.11 seconds with 24 queries.
Google visited last this page 2012.May.15. 12:53:17
Follow ep4ever_news on Twitter