Gönderen Konu: c64'te z80 cpu :)  (Okunma sayısı 1802 defa)

c64'te z80 cpu :)

« : 24.08.2005 00:34:49 »
Hızlı düğmeleri aç

hades

İleti: 214

Çevrimdışı
  • ***
  • Full Member
    • Profili Görüntüle
20 sene önce ZX spectrum ile Z80 asm yazdığım günler aklıma geldi. Bunun üzerine dün gaza geldim ve spectrum emulator indirip 3-4 demo seyrettim. çok güzel efektler vardı. bir an z80 code kasmak geldi içimden ama ne z80'in komutlarını tam olarak hatırlıyorum nede spectrumun bellek haritasını.
Z80 bana göre 6510'dan kat kat güçlü bir cpu. Gerek çalışma hızı (Z80A-4Mhz,Z80B-6Mhz olarak biliyorum) bakımından gerekse komut setinin manyak derece çok ve çeşitli oluşu nedeniyle Z80 bana hep çekici gelmiştir. Normalde 8 bit olan a,b,c,d,e,h,l,ix,iy registerlerinin bc, de, hl olarak 16 bit olarak kullanılabilmesi, bunlar yetmezmiş gibi af', bc', de', hl' gibi alternate registerleri kullanarak asıl registerlerin -bir tür temp adres gibi- bunlara kopyalanması, Stack'in SP registeri ile Ram'İn herhangi bir yerinde tanımlanabilmesi ve uzunluk kısıtlaması olmaması, status bitlerine göre şartlı JP (JMP) ve CALL (JSR) komutları, blok halinde in, out, move, compare komutları sayesinde işlemleri kolaylaştırması  vs vs .....

mesela
 
LD BC, $3000  ; byte counter
LD DE, $8000  ; source adres
LD HL, $c000  ; target adres
LDIR              ;LoaD Increment Repeat  
RET               ; bkz : RTS   :)

komutlarıyla $8000'den başlatıp $3000 byte uzunluğundaki datayı $c000'a taşımak çok basit bir hale geliyor.

Birde illegal komut seti vardı. Mesela HL register çifti ile IX ve IY registerlerinin bir kombinasyonu vardı ve bunlar HX, HY, LX, LY şeklindeydi. Ama hiçbirini kullanmak nasip olmadı  :(
Hatırladığım kadarı ile legal + illegal komut sayısı 783 taneydi.
Kısaca bana göre Z80 gerçekten manyak bir cpu idi.

Hep düşünmüşümdür C64'te 6510 yerine Z80 kullanılsaydı neler olurdu diye.
En başta IO bölgesi normal memory adres bölgesinden çıkıp IO adres bölgesinde kalır sadece IN, OUT vs. komutlarıyla kullanılır ve tüm hafıza sadece ram-rom yapısında olurdu. Mesela VIC banklarının IO bölgesinde olduğunu düşünün. Banklar dibine kadar grafik dolu ve asıl memoryde hayvani bir code olsun. Ayrıca SID için ayrı bir Ram ve yapılması gereken
sadece RAM daki datayı IN komutuyla alıp OUT komutuyla SID'e göndermek. Oldukça uçuk bir teknik.

$0000-$FFFF : RAM-ROM : Normal memory adres bölgesi
$0000-$FFFF : 64K RAM BANK
$0000-$0FFF : 4K IO chips   : IO (VIC-SIDs-COLOR RAM-CIAs-I/O1-I/O2)
$0000-$FFFF : 4x 16K VIC BANK
$0000-$0FFF : 4K karakter seti
$0000-$FFFF : 2x32K SID RAM (Stereo SID olacak)
.....................
İşte böyle
Hızı sayesinde kimbilir ne manyak demo efektleri yapılırdı.

Bir kaç demo daha indirip seyredeyim.
Keşke spectrumun çözünürlüğü 256x192 yerine 320x200 ve renk sayısı daha fazla olsaydı :)
Kimbilir belki spectrum ile 256 bayt kasarım :)

c64'te z80 cpu :)

« Yanıtla #1 : 25.08.2005 01:16:08 »
Hızlı düğmeleri aç

skate

İleti: 5.245

A Sinner Scener
Çevrimdışı
  • Administrator
  • *****
  • Hero Member
    • Profili Görüntüle
    • http://www.akaydin.com/
Ben de Z80'i çok severim. Ancak PEANDOAS'ın bana yolladığı "Programming Your ZX SPECTRUM" kitabında ne yazık ki yalnızca BASIC örnekler var ve bellek haritası falan yok. Yine de ben de kastım ufak tefek birşeyler Spectrum ile. Partyde bu konuda bir muhabbet koyarız bir ara Hades. Hatta geçen sene Spectrum scene'inden bir scener bana ulaştı bir şekilde, spectrumda çıkardıkları bir disk magazineleri için c64 köşesi yazdım bir tane onlara. Ordan gaza geldim ve spectrum kastım azcık...

c64'te z80 cpu :)

« Yanıtla #2 : 25.08.2005 19:19:54 »
Hızlı düğmeleri aç

hades

İleti: 214

Çevrimdışı
  • ***
  • Full Member
    • Profili Görüntüle
evde bir tane zx-spectrum+2 var. sadece basit bir adaptör yapmam lazım. gerçi pc de kod yazıp emulatörde çalıştırabilirim. Ama herşeye yeniden başlamam lazım.

hatırladıklarım şunlar

$0000-$3FFF : 16K Rom
$4000-$FFFF : 48K Ram

6K lık bir ekran + grafik belleği,  768 byte'lık renk bellği var.
galiba 23756 dan itibaren program belleği başlıyordu.
PRINT USR adres veya RANDOMIZE USR adres ile hafızadaki bir code çalıştırılıyordu.

Hatta hiç unutmam o zamanlar bir numaralı bir kopya programı vardı ULTRAFILE adında. Yazdığım bir kod ile bir oyunun datalarını arka arkaya yükleyip tek parça olarak save yapmıştım ve en baba copy programı olan ultrafile bile hafıza yetmediği için oyunu kopyalayamıyordu. :)
Hey gidi günler hey...

Ben niyeti bozdum ve hemen memory map araştıracağım. evdeki eski elektronik dergilerinde spectrum ile ilgili yazılar olacaktı. belki birşeyler bulurum.

c64'te z80 cpu :)

« Yanıtla #3 : 25.08.2005 20:43:04 »
Hızlı düğmeleri aç

skate

İleti: 5.245

A Sinner Scener
Çevrimdışı
  • Administrator
  • *****
  • Hero Member
    • Profili Görüntüle
    • http://www.akaydin.com/
İşte old-skool ruhu. Internet yerine eski dergi karıştırma olayı. Taktir ettim :)

c64'te z80 cpu :)

« Yanıtla #4 : 25.08.2005 21:31:38 »
Hızlı düğmeleri aç

hades

İleti: 214

Çevrimdışı
  • ***
  • Full Member
    • Profili Görüntüle
işte o zamanlar bende olan bir kitabın resmi - artık yok :(

http://www.zxsoftware.co.uk/Books/Pages/Ad...Programming.htm

c64'te z80 cpu :)

« Yanıtla #5 : 26.08.2005 09:57:08 »
Hızlı düğmeleri aç

skate

İleti: 5.245

A Sinner Scener
Çevrimdışı
  • Administrator
  • *****
  • Hero Member
    • Profili Görüntüle
    • http://www.akaydin.com/
Bookmarklarımda yer alan tek Spectrum arşivi bu:

http://www.users.globalnet.co.uk/~jg27paw4/index.html

Zaten en bilindiklerden biri bu yanılmıyorsam.

c64'te z80 cpu :)

« Yanıtla #6 : 28.08.2005 13:52:36 »
Hızlı düğmeleri aç

PE&OAS

İleti: 377

Çevrimdışı
  • ****
  • Sr. Member
    • Profili Görüntüle
konu ile pek alakasi yok ama eklemeden gecemeyeyim, spectrumlarin az renkli paleti ilk gordugumden beri hep ilgimi cekmistir... pal ve bazi diger kisitlamalara ragmen nasilsa c64'ten daha parlak, goz ve can alici renkleri bulunuyordu, topu topu 7 renk ama guzel iste, ayrica bir ara internette symbian 60 icin spectrum gfx pack buldum, bu grafiklerin profesyonel kullanimiyla harika bi$eyler cikarmislardi... kisacasi renk gosterme isini pek iyi biliyor...

c64'te z80 cpu :)

« Yanıtla #7 : 28.08.2005 14:50:02 »
Hızlı düğmeleri aç

spaztica

İleti: 1.493

Çevrimdışı
  • Administrator
  • *****
  • Hero Member
    • Profili Görüntüle
http://www.worldofspectrum.org/faq/referen...8kreference.htm

sanırım işnizi görür; arada sırada google ilearamayı deneyin. :o)

nu arada şu symbian için spectrum gfx pack ne ola ki, merak ettim ve de kurmak isterim 6600a. zati sidplayer for 6600 işe yaramaz bişii çıktı, yüklenmesi bile dert,çalıştırması hiç mi hiç mümkün olmadı 2 adet 6600 telefonda da...

c64'te z80 cpu :)

« Yanıtla #8 : 29.08.2005 13:45:52 »
Hızlı düğmeleri aç

PE&OAS

İleti: 377

Çevrimdışı
  • ****
  • Sr. Member
    • Profili Görüntüle
spaztica abi i$te burada linki, symbian imkani olanlar bir izlesinler... grafikler cidden cok guzel...

ZX-Spectrum Art Slideshow

edit: ayrica getjar.com'da telefonlara bir ton uygulama var, cok ozel amacli uygulamalar da var, telefonda can sikintisini belli bir sure giderebilir. ama hala c64 icin duzgun bir emulator yapamadilar.

c64'te z80 cpu :)

« Yanıtla #9 : 24.11.2006 12:13:26 »
Hızlı düğmeleri aç

ref

İleti: 256

Çevrimdışı
  • ****
  • Sr. Member
    • Profili Görüntüle
eski bir başık ama ben de eski bir specchum olduğuma göre kaynağını tam doğrulayamasam da, C64 üzerinde çalışan bir spectrum simulatörünün varlığından haberdarım.

Emülatör demiyorum, bir simulatör, Spectrum Basic'i çalıştırıyor ve spectrum kasetinden direk yükleyebiliyordu. Elbetteki bu başlığın konusu olan z80 cpu'yu emüle etmesi imkansız, ama yine de c64'e bir tat kattığı için söylemek istedim.

Ne adını, ne üreticisini hatırlıyorum, ama eski 64'cüler bilirler herhalde.