Merhaba, Ziyaretçi. Lütfen giriş yapın veya üye olun.

Kullanıcı adınızı, parolanızı ve aktif kalma süresini giriniz

  Gelişmiş Arama
insanın içinde varsa, commodore.gen.tr açığa çıkarır bunu.. bir nevi retro olaylarının dolunayıyız.(Arda)
Sayfa: [1]   Aşağı git
Yazdır
Gönderen Konu: 65CE02  (Okunma Sayısı 7806 defa)
0 Üye ve 1 Ziyaretçi konuyu incelemekte.
ilkerficicilar
Uzman
*****
Mesaj Sayısı: 1.118


Üyelik Bilgileri WWW
« : Nisan 15, 2019, 13:10:31 ÖS »

Commodore 65'teki CSG 4510'da kısmen 16 bit destekli 65CE02 işlemcisi kullanılmış. Bizim C64'teki 6510 ile pin uyumlu değil ama 40 pin ve çok az bir pin ayarlamasıyla uyarlanabilir. Girdi olarak tek bir frekans alıyor, phi1 ve phi2'yi kendi içinde üretiyor.

İşlemcinin ilginç güzelliği ise, daha verimli pipeline kullanımı sayesinde aynı frekansta kimi durumlarda iki kat kadar hızlı olması.

Örneğin 6510'da 2 cycle süren INY, INX, TAY, TXA, ... gibi komutlar 65CE02'de sadece 1 cycle'da tamamlanıyor. ASL $__ ORA $ __,X gibi zero page kullanan komutlar da 1 cycle daha kısa sürede tamamlanıyor. Bir diğer güzellik ise zero page yerine base page kavramının gelmiş olması, yani istediğimiz yeri base page olarak tanımlayıp zero page hızında kullanabiliyoruz. Ayrıca bazı komutlar 16 bitlik işlem yapıyor, ASW, ROW, INW gibi.

Fantazi yapmak isteyenler, bulabilirlerse bir 65CE02-10 alıp C64'lerini, PET'lerini, C16'larını, VIC-20'lerini yirmi kat (x20) kadar hızlandırabilirler.

65CE02'nin datasheet'i ise şurada: http://archive.6502.org/datasheets/mos_65ce02_mpu.pdf


Logged

http://cbm.ficicilar.name.tr/ - Commodore Hacking
eins
Uzman
*****
Mesaj Sayısı: 1.816


A.K.A. deliMawi


Üyelik Bilgileri
« Yanıtla #1 : Nisan 15, 2019, 13:19:12 ÖS »

Tam üstüne geldi. Bu dediğin değil ama başka bir zihni sinir projenin üzerindeyim ben de... Kahkaha (Bu arada bu 10 değil, 14MHz... )

Logged

Doberman ♦ megaOne ♦ HDMI-64 ♦ HDMI-520 ♦ NewSchool
emarti
Uzman
*****
Mesaj Sayısı: 2.520


Only Amiga Makes It Possible █


Üyelik Bilgileri WWW
« Yanıtla #2 : Nisan 15, 2019, 13:23:12 ÖS »

Biraz daha ayrıntı isteriz. Sadece sök tak değildir muhtemelen. C128 için de uyarlanabilir sanırım.

http://www.65c02.com/wdc/w65c02s-chip.cfm

Yani 16bit işlemler ile z80 gibi yeteneklere sahip olabilir mi?
Logged

https://github.com/emartisoft My GitHUB | http://csdb.dk/scener/?id=26786 My CSDB

READY.
SYS(64767): EMARTI
fort_apocalypse
Uzman
*****
Mesaj Sayısı: 3.652



Üyelik Bilgileri WWW
« Yanıtla #3 : Nisan 15, 2019, 13:58:16 ÖS »

Merakla takipteyim     Kahkaha

 
Logged

i_r_on
Uzman
*****
Mesaj Sayısı: 2.873



Üyelik Bilgileri WWW
« Yanıtla #4 : Nisan 15, 2019, 14:18:31 ÖS »

Anahtar kelime : "bulabilirlerse"  

Ps: Bu arada Jim Brain 6510'un yanına yöresine CPLD ile drop in replacement'lar yapıyor son zamanlarda. Bu çalışmalar bitmiş projeye dönüşürse belki lafımı geri alabilirim.
Logged

Every imagination is one's self reflection but not every self reflection is imagination. <I.R.on - 2001>

twitter | blog
ilkerficicilar
Uzman
*****
Mesaj Sayısı: 1.118


Üyelik Bilgileri WWW
« Yanıtla #5 : Nisan 15, 2019, 14:21:26 ÖS »

@eins Kolay gelsin. Bizi merakta bırakma


@emarti Uyarlanabilir. Yalnız ufak bir hatırlatma: 65CE02 ile 65C02 birbirinden epey farklı. Satan yok 65CE02'yi. Sanıyorum Amiga'nın bir seri kartında kullanılmış, denk gelirse belki ondan sökülebilir. 16 bit işlemler sayesinde sadece daha hızlı bit shift işlemleri (çarpma bölme) ve 128 byte'tan daha uzağa branch mümkün olabiliyor... Kısaca bulabilirsek, güzel bir proje çıkar. Bir ihtimal, Mega 65 projesindeki (http://mega65.org/) FPGA kodundan yararlanıp sadece 65CE02 görevi görecek bir FPGA programlanabilir.

Bu arada, bilmeyenler için not: Commodore 65, hiç piyasaya sürülmemiş bir prototip 8/16 bit Commodore bilgisayar.

65C02 ise, 6510 ile hemen hemen benzer opcode'lara ve pipeline'a sahip. Farklı komutlar arasındaysa PHX PHY  PLX PLY BRA STZ $_ vb. bir kaç komut yer alıyor. Komutlar 6510 ile aynı miktar çevrimde tamamlanıyor.




Logged

http://cbm.ficicilar.name.tr/ - Commodore Hacking
eins
Uzman
*****
Mesaj Sayısı: 1.816


A.K.A. deliMawi


Üyelik Bilgileri
« Yanıtla #6 : Nisan 15, 2019, 14:26:51 ÖS »

@eins Kolay gelsin. Bizi merakta bırakma

...

65C02 ise, 6510 ile hemen hemen benzer opcode'lara ve pipeline'a sahip. Farklı komutlar arasındaysa PHX PHY  PLX PLY BRA STZ $_ vb. bir kaç komut yer alıyor. Komutlar 6510 ile aynı miktar çevrimde tamamlanıyor.

Tabiki gelimelerden haberdar ederim ilerleyince. 65C02 ile ilgili olarak yazdıklarına katılıyorum, sadece 14 kat hızlı çalışabilecek olmasını da unutmayalım derim...

Projenin yazılım kısmını hepinizin tanıdığı bir C64 guru yürütüyor bu arada.
Logged

Doberman ♦ megaOne ♦ HDMI-64 ♦ HDMI-520 ♦ NewSchool
Simon (Özay Turay)
Yönetici
*****
Mesaj Sayısı: 7.584


Commodore Forever


Üyelik Bilgileri WWW
« Yanıtla #7 : Nisan 15, 2019, 18:11:38 ÖS »

Tam da bunun üstüne Arduino Facebook grubunda şöyle bir şeye denk geldim.

http://www.8bitforce.com/projects/retroshield/



« Son Düzenleme: Nisan 15, 2019, 18:15:01 ÖS Gönderen: Simon (Özay Turay) » Logged

https://retrodergi.com - https://e-turay.com - https://karizmawow.e-turay.com

Retro: Commodore 64, Amiga 500, Amiga 1200
Retromsu: Wii, XBox360, XBox, PS3 Slim, PS2 FAT, PS1, PS Vita, Nintendo 3DS, Nintendo 2DS
wizofwor
Genel Yönetici
*****
Mesaj Sayısı: 4.727


Gosub ile gidilen yerden goto ile dönen adam


Üyelik Bilgileri WWW
« Yanıtla #8 : Nisan 15, 2019, 19:25:46 ÖS »

C64'de drop in replacement olarak takılan işlemcinin 1MHz'den hızlı çalışması mümkün değil. Frekansı arttırabilmek için VIC ve CPU frekanslarını ayıran ilave bir glue logic eklemek gerekli. 64'er dergisinden yayınlanan bir 4MHz hack var. İşlemciyi iki cycle 4MHz'de çalıştırıp, 2 cyle bekletiyor (0 Mhz) bu seyede VIC okuma yaparken işlemci durmuş oluyor. Şematikleri incelemek lazım. Belki aynı mantıkla 65CE02 10 Hz'de (5x20MHz+5x0Mhz) çalıştırılabilir.

Diğer bir çözüm de yeni işlemciye bağımsız bir bellek verip, bu belleği VIC'e multimax modunda okutmak şekilde oluyormuş. O zaman sitemin geri kalanından bağımsız, tamamen  gelişigüzel frekanslar kullanmak mümkün.
Logged

witchdoktor
Uzman
*****
Mesaj Sayısı: 6.238



Üyelik Bilgileri
« Yanıtla #9 : Nisan 15, 2019, 19:41:41 ÖS »

Pin'ler remap edildiğinde 6510 uyumluluğu sağlanabiliyor mu yoksa KERNAL, GEOS vb'nin 6502/65C02/65CE02'ye uyarlanması mı gerekiyor? 6510'un $0000 ve $0001 adresleri üzerinden gerçekleşen I/O ve PLA tarafından dekode edilen bankswitching işlevleri nasıl gerçekleştiriliyor?
Logged
ilkerficicilar
Uzman
*****
Mesaj Sayısı: 1.118


Üyelik Bilgileri WWW
« Yanıtla #10 : Nisan 15, 2019, 20:39:56 ÖS »

Bank-switch için ayrı bir glue-logic gerekiyor, zor değil. Legal opcode'lar ise 6510 ile aynı. Uyarlama gereken tek kısım I/O işini işlemci cycle'ına göre yapan kodlar.

Bu arada, bir ara 65816 düşünüyordum. Ama 65816 yerine 65CE02 daha mantıklı gibi. Aynı frekansta daha hızlı çalışıyor 65CE02.

SuperCPU gibi ya da Turbo Master CPU gibi kartuş portundan takılan bir hızlandırıcı projesi güzel olurdu tabii, ama şimdilik o tür projelere zaman ayırmak bir lüks.
Logged

http://cbm.ficicilar.name.tr/ - Commodore Hacking
ilkerficicilar
Uzman
*****
Mesaj Sayısı: 1.118


Üyelik Bilgileri WWW
« Yanıtla #11 : Mayıs 10, 2019, 12:30:00 ÖS »

Şu gözümden kaçmış: Hi65 Commodore 65 BASIC 10 Emülatörü

http://devilmaster.altervista.org/hi65.html

Linux'ta Wine Windows emülatörü altında denedim. Suyunun suyu olduğu için biraz yavaş. Henüz doğrudan BASIC programı yazma desteği yok, programı Hi65 dışında yazıp petcat ile BASIC token'lı haline çevirip Hi65 altında yüklüyoruz.

Emülatör, kaynak koduyla birlikte geliyor. Raspberry Pi vb. için derleyip, 3D bir C65 kasası içine yerleştirerek, Ebay'den 16-25 bin dolara C65 almak zorunda(!) kalmayabiliriz.

Logged

http://cbm.ficicilar.name.tr/ - Commodore Hacking
Sayfa: [1]   Yukarı git
Yazdır
Gitmek istediğiniz yer: