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)
commodore.gen.trGenel KategoriProjeKissCart64 - Çoklu C64 Kartuşu
Sayfa: 1 [2] 3 4 ... 20   Aşağı git
Yazdır
Gönderen Konu: KissCart64 - Çoklu C64 Kartuşu  (Okunma Sayısı 58221 defa)
0 Üye ve 3 Ziyaretçi konuyu incelemekte.
Özgür Dereli
Uzman
*****
Mesaj Sayısı: 1.072



Üyelik Bilgileri
« Yanıtla #15 : Temmuz 31, 2015, 21:38:04 ÖS »

Özay şimdiden 2 adet olarak benide ekle listeye
Logged
Metallic
Uzman
*****
Mesaj Sayısı: 805



Üyelik Bilgileri
« Yanıtla #16 : Temmuz 31, 2015, 22:38:50 ÖS »

Simon, sd2iec bombasından önce araya başka projeler alıyorsun bakıyorum =)   8K'ya uygun kartuş oyunları için arama yapınca oyunlar daha çok .crt emulasyon dosyaları olarak çıkıyor. MultiCart64'de kullanmak için oyunların rom/bin dosyalarının bulunabildiği senin bildiğin linkler var mı?
Logged
cdemir
Uzman
*****
Mesaj Sayısı: 2.784



Üyelik Bilgileri
« Yanıtla #17 : Temmuz 31, 2015, 23:59:12 ÖS »

@Metallic

Bir miktar var burda ama çok değil.

http://ftp://arnold.c64.org/pub/games/Cartridges/


Ek:  Bunlar da crt imiş. 
Logged

Simon (Özay Turay)
Genel Yönetici
*****
Mesaj Sayısı: 6.018


Commodore Forever


Üyelik Bilgileri WWW
« Yanıtla #18 : Ağustos 01, 2015, 04:45:51 ÖÖ »

tost mantığıyla 2 plakanın üstüne 2 de altına üst üste 2 şer (toplam da 4) eprom çakmanın yolu varmıdır ? Kahkaha
Artı dip switch yerine de menu çıksa yazılımsal geçiş yapılsa.

bu kartuşların yanlış bilmiyorsam sd kart okuyuculusu var sd kartın içine attığın oyunu kartuş oyunu gibi açıyor ondan yapsan daha iyi olmazmı ?


4 EPROM olayı yapılmasına yapılır hatta 4 taneye de gerek yok daha büyük kapasiteli EPROM'lar var ama mesele KISS prensibinde bitiyor. Menü'den seçim ve EPROM yerine SD kart için işin içine daha önce bu başlıkta da konuştuğumuz gibi mikrodenetleyici içermesi gerektiğinden ve C64 tarafında da yazılım geliştirmek gerekeceğinden projeyi o kadar karmaşıklaştırmaya gerek yok bence. Bu tarz bir kartuş zaten var, EasyFlash 3 daha ucuza maledebileceğimizi düşünmüyorum, üstelik bu kadar karmaşık bir proje söz konusu olduğunda tekerleği yeniden icat etmenin anlamı yok bence.


1 adet besleme kondansatörü ve 2 adet 1N4001(1n4004-1n4007) diyot devreye eklenebilir, pozitif ve negatif beslemede doğru polarma sağlayabilmek için 


Kartuşu ters takmadığın sürece polarite problemi olmaz zaten. Besleme için de kondansatöre gerek olduğunu sanmıyorum standart kartuşların hepsinde bir tek decoupling için 100nf mercimek kondansatör kullanılmış.


1-2 önerim olacak. Şimdi pek vaktim yok. Akşama yazarım ancak.

Acelesi yok beyin jimnastiği olsun diye açtım konuyu zaten. DIP Switch'e alternatif olarak bank switching olayını ATtiny13, 3 led ve 1 buton kullanarak yapabilen ve son seçilen bankı hatırlayabilen 1.1 sürümü üzerinde düşünceler geziyor kafamda. Tek sorun araya led girince 3V'a düşen adres hattını EPROM HIGH olarak algılayacak mı yoksa üç tane transistör, üç tane de direnç eklemem gerekecek tasarıma. Breadboard üzerinde denemem lazım tasarıma geçmeden önce.


Devre şemasını paylaşabilir misiniz. Ben de MSX'ler için böyle bir kartuş tasarlamak istiyorum.

En kısa zamanda ilk mesaja ekleyeceğim. Ekledim bile.


#DUA: Eller dert, zehir akıl alzheimer görmesin!

Amiiiiin.

#SORU: Pekiyi, Zeki Müren de bizi görecek mi? Demem o ki, oyunları ekle kaldır işlemi olabilecek mi?

Maalesef sadece EPROM yazıcı ile yazılabiliyor.


Simon, sd2iec bombasından önce araya başka projeler alıyorsun bakıyorum =)

SMD denemelerine başlamadığım için araya DIP bileşenlerden oluşan bir proje alayım dedim.


8K'ya uygun kartuş oyunları için arama yapınca oyunlar daha çok .crt emulasyon dosyaları olarak çıkıyor. MultiCart64'de kullanmak için oyunların rom/bin dosyalarının bulunabildiği senin bildiğin linkler var mı?

Bunlar da crt imiş. 

WinVICE klasöründeki cartconv.exe ile CRT/BIN dönüşümü yapabiliyoruz. Hatta biraz araştırsak 8K'dan küçük PRG'leri CRT'ye dönüştürebilen uygulama da buluruz mutlaka.
« Son Düzenleme: Ağustos 01, 2015, 04:53:41 ÖÖ Gönderen: Simon (Özay Turay) » Logged

http://www.retrodergi.com - http://www.e-turay.com

Retro: Commodore 64, Amiga 500, Amiga 1200
Retromsu: Wii, XBox360, XBox, PS3 Slim, PS2 FAT, PS1, PSP Slim, Nintendo DS Lite
ibo1973
Uzman
*****
Mesaj Sayısı: 1.824


Üyelik Bilgileri WWW
« Yanıtla #19 : Ağustos 01, 2015, 10:24:32 ÖÖ »

yanlış anlamışşın yazılım geliştirmeye gerek yok c64 tarafında.  Mikro denetliyici için ufak bir yazılım gerekir c64 e takınca kartuş gibi çalışıcak yani sd kartın içindeki tek oyunu kartuş oyunu gibi çalıştırıcak maliyet açısındanda bi mikro kontroller kaç paralık şey içine iş görücek kadar bir mikro kontroler koysan 5 liralık bi şey  neyse hani ilk mesajda dedin ya ya şimdi konuşşun yada sonsuzu kadar sussun bende madem yapıyorsun eprom du şuydu buydu uğraşmak yerine isteyenler sd kartın içine istedikleri tek oyunu atıp kartuş oyunu gibi oynasalar daha iyi olur dedim.

simon
C64 tarafında da yazılım geliştirmek gerekeceğinden projeyi o kadar karmaşıklaştırmaya gerek
« Son Düzenleme: Ağustos 01, 2015, 10:26:31 ÖÖ Gönderen: ibo1973 » Logged

Eşim ve yengemin videolarını çektiği benimde teknik konularda destek olduğum youtube yemek kanalımız
http://www.youtube.com/misgibiyemektarifleri
Metallic
Uzman
*****
Mesaj Sayısı: 805



Üyelik Bilgileri
« Yanıtla #20 : Ağustos 01, 2015, 17:16:14 ÖS »

WinVICE klasöründeki cartconv.exe ile CRT/BIN dönüşümü yapabiliyoruz. Hatta biraz araştırsak 8K'dan küçük PRG'leri CRT'ye dönüştürebilen uygulama da buluruz mutlaka.

Evet cartconv.exe işe yarıyor. crt'den bin'e çevirdim, WinVice'da çalıştı. Hatta bin'den crt'ye, crt'den prg'ye de çeviriyor, ama prg'den crt/bin'e çevirmiyor. Denemek isteyenler için birkaç link vereyim:
crt oyun kolleksiyonu
crt oyunlardan 8K'ya uygun olanlar
prg oyunlardan 8K'ya uygun olanlar (güzel diyebileceklerim)

Keşke devrenin bank switching özelliği olsa da 8K'dan büyük oyunlar dipswitch kullanmadan bir menü üzerinden çalıştırılabilse diye düşünüyor insan =)

Simon, maalesef bir de kötü haber. Saygısız birileri sen daha kartuşu yapmadan klonlarını üretip ebay'de satmaya başlamış (ben de bu MultiCart ismi bana hiç yabancı gelmiyor diyordum =)
MultiCart 64
MultiCart+
http://sharewareplus.blogspot.com.tr/
Logged
Simon (Özay Turay)
Genel Yönetici
*****
Mesaj Sayısı: 6.018


Commodore Forever


Üyelik Bilgileri WWW
« Yanıtla #21 : Ağustos 01, 2015, 17:34:52 ÖS »

Talihsizlik olmuş, isim araştırması yapmadan proje yaparsan olacağı budur.

SimpleCart64 mü yapsak adını,var mı başka önerisi olan?
Logged

http://www.retrodergi.com - http://www.e-turay.com

Retro: Commodore 64, Amiga 500, Amiga 1200
Retromsu: Wii, XBox360, XBox, PS3 Slim, PS2 FAT, PS1, PSP Slim, Nintendo DS Lite
Metallic
Uzman
*****
Mesaj Sayısı: 805



Üyelik Bilgileri
« Yanıtla #22 : Ağustos 01, 2015, 17:37:59 ÖS »

Benim ilk aklıma gelen KissCart64 =)
Logged
Simon (Özay Turay)
Genel Yönetici
*****
Mesaj Sayısı: 6.018


Commodore Forever


Üyelik Bilgileri WWW
« Yanıtla #23 : Ağustos 01, 2015, 17:58:16 ÖS »

Süper fikir bayıldım.
Logged

http://www.retrodergi.com - http://www.e-turay.com

Retro: Commodore 64, Amiga 500, Amiga 1200
Retromsu: Wii, XBox360, XBox, PS3 Slim, PS2 FAT, PS1, PSP Slim, Nintendo DS Lite
Metallic
Uzman
*****
Mesaj Sayısı: 805



Üyelik Bilgileri
« Yanıtla #24 : Ağustos 01, 2015, 18:48:17 ÖS »

Heheh pcb'nin bir köşesine dudak resmi yakışır artık =)

Şu saygısızların yaptıkları kartuşun şemasını bir arayayım dedim, ama bulamadım hiçbir yerde yok. Ama entegreler belli, 27C4001 512K eprom için bank switching logic olarak 74LS273 ve 74LS139 kullanmışlar. İleride KissCart64+ versiyonu yapacak olursan aklımızda olsun.
Logged
Simon (Özay Turay)
Genel Yönetici
*****
Mesaj Sayısı: 6.018


Commodore Forever


Üyelik Bilgileri WWW
« Yanıtla #25 : Ağustos 01, 2015, 20:34:03 ÖS »

Kafamız aynı çalışıyor, dudak resmini de, KissCart64+ versiyonunu da düşündüm. Yalnız ben DIP switch veya lojik entegre yerine MCU kullanmayı düşünmüştüm.

Bir (veya iki) buton kullanarak banklar arasında geçiş artı MCU'nun EPROM'unun ilk byte'ına hangi bankta olduğumuzu yazıp reset hattını da kullanarak çok kısa bir program ile kolayca halledilebilir. Hatta breadboard'a ledleri ve butonları koydum bu gece yazılımı hallederim muhtemelen.

@i_r_on: Lojik entegre veya MCU kullandığımızda C64 kartuş portundan bir girdi alınacak program yazılabilir mi? Böyle bir program yazabilirsek kartuş formatına getirerek kartuşun ilk bankına onu koyarsak 27C512 ile 7 in 1, 27C4001 ile 63 in 1 kartuş yapabiliriz.

* = $8000
 
     .word coldstart            ; coldstart vector
     .word warmstart            ; warmstart vector
     .byte $C3,$C2,$CD,$38,$30  ; "CBM8O". Autostart string
 
coldstart
     sei
     stx $d016
     jsr $fda3 ;Prepare IRQ
     jsr $fd50 ;Init memory. Rewrite this routine to speed up boot process.
     jsr $fd15 ;Init I/O
     jsr $ff5b ;Init video
     cli
 
warmstart
; Insert your code here
     inc $d020
     jmp *-3
 
* = $9fff                     ; fill up to -$9fff (or $bfff if 16K)
     .byte 0


http://blog.worldofjani.com/?p=879
http://n2dvm.com/leif.html
http://codebase64.org/doku.php?id=base:assembling_your_own_cart_rom_image
Logged

http://www.retrodergi.com - http://www.e-turay.com

Retro: Commodore 64, Amiga 500, Amiga 1200
Retromsu: Wii, XBox360, XBox, PS3 Slim, PS2 FAT, PS1, PSP Slim, Nintendo DS Lite
Metallic
Uzman
*****
Mesaj Sayısı: 805



Üyelik Bilgileri
« Yanıtla #26 : Ağustos 01, 2015, 22:23:32 ÖS »

Simon, FC3'deki lojik ic kullanılarak yapılan bank switching hakkında kısa bir bilgi vereyim, lojik ic yerine mcu ile yapılabilir mi diye düşünün isterseniz. FC3'de banking register olarak $DFFF adresi kullanılıyor. Bu adrese yapılacak bir yazma istemini yakalamak için adres hattının en düşük 8 biti (A0-A7), IO2 ve R/W sinyalleri kullanılıyor. Bu sinyaller 74LS133'ün girişine verilerek AND işleminden geçiriliyor (74LS133'ün çıkışı 74LS273'e bağlı). Sonuç 1 çıkarsa 74LS273, veri hattında o an bulunan veriyi yakalıyor ve bu veriyi 8K/16K mapping ve bank switching için kullanıyor. Örneğin;
LDA #$33
STA $DFFF
kodu c64'de çalışınca, $DFFF'ye yapılan yazma işlemini 74LS133 yakalıyor ve 74LS273'ü tetikliyor. 74LS273'de data bus'daki veriyi ($33) kullanarak EXROM ve GAME girişlerini 1 yaparak eprom'u map'liyor, A14 ve A15'i 1 yaparak istenilen bank'i seçiyor.

$DFFF bits:
0 - A14
1 - A15
2 - unused
3 - unused
4 - EXROM
5 - GAME
6 - unused
7 - Freeze Mode (LED control)

MCU kullanılarak bu yapılabilir mi pek haberim yok =)
Logged
wizofwor
Genel Yönetici
*****
Mesaj Sayısı: 3.887


Gosub ile gidilen yerden goto ile dönen adam


Üyelik Bilgileri WWW
« Yanıtla #27 : Ağustos 01, 2015, 23:45:55 ÖS »

Benim bu proje ile ilgili iki önerim olacaktı. Biraz geç kalınca benzer fikirler diğer arkadaşlardan da gelmiş.

Birincisi bank switch'i C64 üzerinden yazılımla yapmak. Konu hakkında fazla bilgi sahibi olmadan shiftregister kullanarak bir şeyler yapılabilir mi? diye düşünüyordum. Sanıyorum bu fikrin oluru Metallic'in yukarıda anlattığı 74LS133 ve 74LS273 kullanan metod.

İkincisi kartuş oyunu deyince aklıma RGCD'nin düzenlediği yarışmalar geliyor. Bu yarışmadaki oyunlar ise 16K. Acaba aynı kartın 16'lık versiyonunu da yapmayı düşünür müsün? Bu 8k olup daha sonra 16K versiyonu da yapılabilir.
Logged

Simon (Özay Turay)
Genel Yönetici
*****
Mesaj Sayısı: 6.018


Commodore Forever


Üyelik Bilgileri WWW
« Yanıtla #28 : Ağustos 02, 2015, 00:15:20 ÖÖ »

@Metallic: Sağol bunu inceleyip gerekirse basit denemeler yapacağım. Ama C64 kodunu ben yazamam haberiniz olsun, birileri el atacak artık başarılı olursak. Kahkaha

@wizofwor: 16K versiyonu iki çiple yapmak mümkün, bu devredeki EPROM'u ikileyip ikinci çipin !OE, !CE sinyallerini ROML yerine ROMH'a bağlamak ve EXROM ile birlikte GAME sinyalini de LOW yapmak yeterli oluyor. Ancak bu durumda oyunları yazarken aynı bankı kullanarak yarısını birinci EPROM'a diğer yarısını ikinci EPROM'a yazmak uğraştırıcı olabilir.

Veya adres hatlarından doğru hat seçilerek belki tek EPROM ile 8x8KB yerine 4x16KB şeklinde de kullanılabilir.
Logged

http://www.retrodergi.com - http://www.e-turay.com

Retro: Commodore 64, Amiga 500, Amiga 1200
Retromsu: Wii, XBox360, XBox, PS3 Slim, PS2 FAT, PS1, PSP Slim, Nintendo DS Lite
I.R.on
Uzman
*****
Mesaj Sayısı: 2.717



Üyelik Bilgileri WWW
« Yanıtla #29 : Ağustos 02, 2015, 01:08:14 ÖÖ »

@Simon : Siz bu yazışmaları yapmasaydınız projeyi gördüğümde aklıma ilk gelen şey ilk seçilen rom'un menü olması diğerlerininse bu menüden seçilmesi idi. Siz de aynı noktaya gelmişsiniz

C64 kartuşları hakkında teferruatlı bilgim yok.  Aklıma ilk gelen şey 6510 üstünde 6502'dekinden farklı olarak bulunan PA gpio pin'lerinden expansion port'un nasibini alıp almadığı oldu. Baktım yok. Metallic'in de yazdığı gibi kartuşun Adres bus'ı dinleyip spesifik bir adrese kulak kesilip oraya yazılan değeri yakalayabiliyor olması lazım. 64K eprom kullandığına göre 8 değişik değer yakalayabiliyor olman lazım. Sana 3 bit lazım.

Metallic'in yazdığı 13'lü nand arkasına latch olayı mantıklı. Yalnız pratikte de çalıştırman lazım.

Şaka maka aynı haltı geçenlerde ben de yedim. Ben önce 74165'e paralel yüklemeye çalıştım databus'taki veriyi address bus'a istediğim değer geldiği vakit. Benim durumumda koca 8k emrime amade idi sadece bir adet 3 to 8 decoder işimi gördü. Ancak bir türlü databus'taki veriyi latch'leyemedim. Muhtemelen benim devredeki bir dandikliğe gelmiş olabilir. Sonra 74373 latch ile paralel load edip paralel almaya çalıştım data bus içeriğini. O da yemedi.

En son lanet olsun dedim $8000-$9FFF arasına erişilirse 0 bilgisi göndersin 6502, $A000-$BFFF arasına erişirse 1 bilgisini göndersin. 74138 3 to 8 decoder ile bu banklara erişim anlamında çıkan sinyali arduino'nun interrupt pin'lerine gönderdim. Bu şekilde çalıştı. (Ama dediği gibi önceki kurgularım da muhtemelen doğruydu ve çalışacaktı belki de)

Yani ne yaparsan yap dene mutlaka.

MCU kullanma bence, onunla da yapılır ama gerçek sistemde çok sayıda adres pinini kontrol etmek gerekeceği için hem timing'i sorun olur hem de bir sürü i/o pin yer vesaire vesaire... MCU ancak sd kart + ram'lı devrede işe yarar.

@Metallic :
IO2/, R/W... bunlar logic 0 olmalı, bu durumda I/O adresi $DF00-$DFFF'a daraltılıyor. buradaki adresi seçmek için nand kullanılabilir çünkü nand tüm girişler 1 ise 0 üretir... Üretmek istediğimiz sinyal 0 ise adres olarak $DFFF yerine DF00 kullanılıp varsa 8 + 2 bacaklı nor kullanılabilir (var mı bilmiyorum) yahut diğer sinyallerin invert edilmesi gerekir ki bu da ekstra çip demek.



Ancak daha kolayı $DF00 ile $DFFF aralığını tek bir adres gibi görmek bence. Bu I/O alanları kartuşlara ayrılmış zaten. Tek sıkıntı çıkma durumu üstüste kartuş takılması durumu olur. O da "ben de isterem" diyecektir. Ama bizim durumumuzda sorun olacağını sanmıyorum.

Bu durumda IO2/ ve RW (Buradaki 0 olan W ile ilgileniyoruz)

Metallic, bir de şunu anlamadım wiki'de EXROM ve GAME'in de low active sinyaller olduğu yazılıyor. Yani bunlara 0 vermek lazım ki aslında zaten kartuş taktığımız için kafadan da 0 vermemiz gerekmiyor mu? Yani aslında kartuşu devre dışı çıkarmak için ihtiyaç olur ancak bunlara gibi geliyor. IO adreslerinden birinden yakalanan 3 bitlik değerden sonra düzgün bir şekilde reset çakılırsa kontrol seçilen bank'a gider gibi hali hazırda.

74LS273 yerine 4 bitlik bir latch bile yetebilir bence. databus üstünden 3 pin yakalansa yeter. Bunlar da 27C512'nin en üst adres pin'lerine beslenir. Ancak menü rom'u switching'i yaptığı noktada artık kontrol switch edilen rom'a geçer bu noktada sıçarız Menü rom'unun kodunun 8k'lık tüm rom'larda aynalanması gerekir sıçmamak için. (Bu kısmı çözümsüz bırakıyorum şimdilik)

Menü rom'u önyüzde seçimi yaptıracak, bu seçimi 74 serisi entegrelerimiz yakalayacak... peşine menü rom'u warm reset çakacak...

Latch'lerle ilgili pratiğim sınırlı. Ancak senin söylediğin 74Ls273 ile de olur gibi.

"The DM74LS273 is an 8-bit parallel register with a common
Clock and common Master Reset. When the MR input is
LOW, the Q outputs are LOW, independent of the other
inputs. Information meeting the setup and hold time
requirements of the D inputs is transferred to the Q outputs
on the LOW-to-HIGH transition of the clock input."

https://tams-www.informatik.uni-hamburg.de/applets/hades/webdemos/16-flipflops/60-ttl/74273.html

MR/ 0 iken hep çıkışları 0 veriyor. CP 0'dan 1'e geçerken yüklemeyi yapıyor.

Şimdi bu durumda menü seçimi ile yapılan reset sıcak reset olacağı için reset sinyali latch'i clear edemeyecek. Ancak açılıştı reset sinyali 0-1-0 şeklinde hareket ettiği için latch'i sıfırlayacak. Ancak resetin son değeri 0 olacağı için bu latch'i sürekli sıfır konumunda tutar. Bu yüzden reset sinyalinin tersini MR/'ye vermek lazım.

CP ise 0'dan 1'e geçişte aktif oluyor. Bizim sinyallerin biri (IO2/) biz ilgilenmez iken 1, diğeri de aynı şekilde 1.

Oluşturulmak istenen iki sinyal de active low olsaydı NAND kapısı işimizi görürdü. CP sinyalinde beklediğimiz değer 1 dolayısıyla işimizi görmez. (Yeterince elde olursa görür aslında tüm diğer kapılar NAND'lardan yahut NOR'lardan yapılabilir)

Neyse bu durumda NOR kullanmak lazım, NOR ve NAND kapılarının doğruluk tablosunda şöyle bir güzellik var. Girişler birbirine eşit değerde ise bu kapıların ikisi de inverter gibi çalışıyor.

Şöyle,

IO2/ NOR IO2/ = CP
RESET/ NOR RESET/ -> MR/

Kontrol edelim,

Kod:
IO2/  RW/  CP
0     0    1 <- $DFxx adresine yazıldığında
0     1    0
1     0    0
1     1    0

Bu şekilde olabilir.. ancak dediğim gibi sıkıntı switching'in yapıldığı nokta. Bildiğim kadarıyla sıcak reset'te reset sinyali kullanılmıyor. Dolayısıyla bu sinyalle ancak açılışta yahut kartuş üstünde reset sinyali üreten bir devre varsa bununla latch'i sıfırlamak mümkün. Ancak program latch'i kontrol etmek için $DF00-$DFFF aralığına yazdığında diğer rom'lardan birine geçiş yapılmış olacak. Bir sonraki instruction kalınan yerden geçiş yapılan rom'dan okunacak. Kernal hala ayakta oluyor sanırım. Bu durumda diğer romlarda aynı lokasyonda kodun devam etmesi durumunda bu iş olur.

Dediğim gibi kartuş sistemi ile ilgili bilgilerim sınırlı. Belki benim yanlış bildiğim şeyler olabilir. Söz sizlerde.
Logged

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

twitter | blog

C64, Amiga 500, Ps3, Wii, Nintendo DS lite, Nintendo 3DS
Sayfa: 1 [2] 3 4 ... 20   Yukarı git
Yazdır
Gitmek istediğiniz yer: