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.trCommodoreCommodore GenelAdım Adım C64 Oyunu Yapalım
Sayfa: [1] 2   Aşağı git
Yazdır
Gönderen Konu: Adım Adım C64 Oyunu Yapalım  (Okunma Sayısı 16605 defa)
0 Üye ve 1 Ziyaretçi konuyu incelemekte.
Simon (Özay Turay)
Yönetici
*****
Mesaj Sayısı: 7.756


Commodore Forever


Üyelik Bilgileri WWW
« : Ocak 25, 2012, 02:27:47 ÖÖ »

RetroRemakes.com sitesinden Endurion'un yazı dizisinin link aşağıda. Her hafta yeni bir şeyler ekleyerek 51 partlık bir tutorial oluşturmuş eleman. Son yayınladığı part 20 Ocak 2012 tarihli ve hala devam ediyor.

Üstelik oyun da Supernatural. Kahkaha






http://www.retroremakes.com/remaketalk/index.php?p=/discussion/2391/how-to-write-a-c64-game-in-several-steps/p1

Edit: Mevcut bölümleri açıklamalarıyla birlikte paketleyip siteme ekledim her ihtimale karşı.

C64 Game Steps.7z
« Son Düzenleme: Aralık 04, 2013, 16:31:39 Ö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
LW3D
Yönetici
*****
Mesaj Sayısı: 11.418


Günü Kurtaran Avam Hiooargggh :)


Üyelik Bilgileri WWW
« Yanıtla #1 : Ocak 25, 2012, 14:35:57 ÖS »

20 yıl önce neredeydin

zaman bulup bakmak isterim. Harika bir şey...Her C64 kullanıcısının hayali
Logged

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


Commodore Forever


Üyelik Bilgileri WWW
« Yanıtla #2 : Ocak 25, 2012, 15:24:42 ÖS »

Bu arada Endurion C64 Studio programının yazarıymış. VICE'ın debug özelliklerini sonuna kadar kullanabilen bir programlama editörü olan C64 Studio'nun son sürümüni buradan indirebilirsiniz.
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.785


Gosub ile gidilen yerden goto ile dönen adam


Üyelik Bilgileri WWW
« Yanıtla #3 : Ocak 30, 2012, 00:06:18 ÖÖ »

Bu sitedeki linkler bende neden çalışmıyor? "c64_labels_asm.zip" dosyasını indirmek istedim ama üzerine tıklanmıyor.
Logged

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


Commodore Forever


Üyelik Bilgileri WWW
« Yanıtla #4 : Ocak 30, 2012, 01:03:46 ÖÖ »

Giriş yaptın mı?
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
witchdoktor
Uzman
*****
Mesaj Sayısı: 6.238



Üyelik Bilgileri
« Yanıtla #5 : Ocak 30, 2012, 01:22:58 ÖÖ »

Yahu C64 programlaması demişken geçtiğimiz yıllarda sitede bahsedilen müthiş bir tool vardı adını unuttum da, bellek haritasındaki herhangi bir bölgenin dinamik olarak görselleştirilebilmesini (sprite, screen memory vb gibi) sağlıyordu, aramaya üşendim.
Logged
longbow75
Üye
***
Mesaj Sayısı: 170



Üyelik Bilgileri
« Yanıtla #6 : Ocak 30, 2012, 01:33:42 ÖÖ »

ayni programmi bilmem ama benim bildigim ICU64 (I see you ?)  programi var. Vice ile beraber calisip memory haritasini gorebiliyorsunuz.
http://icu64.blogspot.com/
Logged

Commodore Forever!
witchdoktor
Uzman
*****
Mesaj Sayısı: 6.238



Üyelik Bilgileri
« Yanıtla #7 : Ocak 30, 2012, 13:56:45 ÖS »

@longbow85
Çok yaşa, evet buydu.
Logged
wizofwor
Genel Yönetici
*****
Mesaj Sayısı: 4.785


Gosub ile gidilen yerden goto ile dönen adam


Üyelik Bilgileri WWW
« Yanıtla #8 : Ocak 31, 2012, 21:14:14 ÖS »

"CBM program studio" ve "C64 Studio" adında iki program yükledim. Kullananlar hangisini kullanıyor acaba? CBM program studio daha iyiye benziyor ama diğerine göre biraz daha karışık gibi.

C64 studio'yu açar açmaz kopyala/yapıştır/derle/çalıştır yapabildim. CBM'i ise biraz kurcalamam lazım herhalde. (Belki de ayrıca ACME kurmamı istiyor bilemedim.) İkisini karşılaştırabilecek olan var mı?
Logged

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



Üyelik Bilgileri
« Yanıtla #9 : Ocak 31, 2012, 23:03:07 ÖS »

@wizofwor
CBM Prg Studio'yu kullandım, gayet kullanışlı geldi bana. Fırsat bulursam bu ortamda geliştireceğim bir şeyler.

http://www.ajordison.co.uk/
Logged
wizofwor
Genel Yönetici
*****
Mesaj Sayısı: 4.785


Gosub ile gidilen yerden goto ile dönen adam


Üyelik Bilgileri WWW
« Yanıtla #10 : Ocak 31, 2012, 23:11:59 ÖS »

CBM'e ikinci bir şans daha vereyim o zaman.

Tutorial'a başladım ama birinci adımda takıldım.
Biraz basit bir soru olacak ama aşağıdaki kodda "!byte $0C,$08,$0A,$00,$9E,$20,$32,$30,$36,$34,$00,$00,$00,$00,$00" satırı ne iş yapıyor?

Eğer tahmin ettiğim gibi 15 byte'lık datayı $0801'den itibaren hafızaya yerleştiriyorsa, bu data ne işe yarıyor?

Kod:
[code];compile to this filename
!to "jmain.prg",cbm

;define constants here

;address of the screen buffer
SCREEN_CHAR      = 52224

;this creates a basic start
*=$0801

          ;SYS 2064
          !byte $0C,$08,$0A,$00,$9E,$20,$32,$30,$36,$34,$00,$00,$00,$00,$00

          ;init sprite registers
          ;no visible sprites
          lda #0
          sta 53248 + 21
         
          ;set charset
          lda #$3c
          sta 53272

          ;VIC bank
          lda 56576
          and #$fc
          sta 56576

          ;the main game loop
GameLoop 
          ;border flashing
          INC 53280
          ;top left char
          INC SCREEN_CHAR
         
          jsr WaitFrame

          jmp GameLoop         
         
         
!zone WaitFrame
          ;wait for the raster to reach line $f8
          ;this is keeping our timing stable
         
          ;are we on line $F8 already? if so, wait for the next full screen
          ;prevents mistimings if called too fast
WaitFrame
          lda $d012
          cmp #$F8
          beq WaitFrame

          ;wait for the raster to reach line $f8 (should be closer to the start of this line this way)
.WaitStep2
          lda $d012
          cmp #$F8
          bne .WaitStep2
         
          rts

Not: Kodların anlamlarını ararken aynı yazarın daha detaylı açıklamalarını buldum. Linkte bulabilirsiniz. http://www.gamedev.net/blog/949/entry-2249793-first-step-explained-in-detail/[/code]
« Son Düzenleme: Şubat 01, 2012, 12:27:17 ÖS Gönderen: wizofwor » Logged

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


Commodore Forever


Üyelik Bilgileri WWW
« Yanıtla #11 : Şubat 01, 2012, 11:46:02 ÖÖ »

O satır programı yüklediğinde RUN komutu ile çalıştırabilmeni sağlıyor. Aksi taktirde SYS 2064 yazman gerekecekti ve LIST yazdığında herhangi birşey göremeyecektir.

Makine dili programı için BASIC'ten kolayca başlatmak için ufak bir yardım yani.

Ayrıntılı bilgi için: http://www.tr-demoscene.info/showthread.php?1947-ipucLarI

Not: "Alıntı Ekle" yerine "Kod Ekle" kullanırsan o   lerden kurtulursun.
« Son Düzenleme: Şubat 01, 2012, 11:52:15 ÖÖ Gönderen: Ö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
nightlord
Uzman
*****
Mesaj Sayısı: 558



Üyelik Bilgileri WWW
« Yanıtla #12 : Şubat 01, 2012, 21:07:43 ÖS »

benim verebilecegim bir tuyo var: ben bu 0801'e byte'lari dizerek sys xxxx yazdirma olayini hic kullanmam. bunun yerine pucrunch kullanirim. pucrunch hazirladiginiz programi sikistirip basina da sikismis programi acacak kucuk bir kod ekleyerek basic'ten "run" ile calistirilabilecek bir paket elde eder.

bu, derleme asamasina bir ekstra adim eklemek demek. bunu hangi ideyi veya bat dosyasini kullaniyorsaniz orada acme vs gibi assembler satirindan sonra bir satir daha ekleyip pucrunch komutu eklenerek otomatize edilebilir

yani siz kodu istediginiz adrese yazip dosediniz. ve diyelim ki kod $c000 adresinden basliyor. o zaman bunu acme ile (diyelim ki "out.prg" adinda)c64 prg'si haline getirdikten sonra yapmaniz gereken:

pucrunch out.prg final.prg -x 0xc000

pucrunch a verilen -x opsiyonu program bellege acildiktan (yani sikistirma islemi geriye cevirildikten) sonra atlanacak adresi veriyor.

not: bunu diger yoldan daha iyi bir yoldur anlaminda soylemiyorum. isterseniz byte'larla sys komutunu dizebilirsiniz. hic bir sakincasi yok. sadece programinizda grafik ogeler de kullanmaya basladiginiz anda cruncher kullanmak kazanim haline geliyor ve bunu o zaman kullanmak isteyeceksiniz nasilolsa. o yuzden bahsettim.
Logged
Simon (Özay Turay)
Yönetici
*****
Mesaj Sayısı: 7.756


Commodore Forever


Üyelik Bilgileri WWW
« Yanıtla #13 : Şubat 02, 2012, 04:51:19 ÖÖ »

Ben de şu anda derlemek, crunch etmek ve WinVICE ile test etmek için şöyle bir batch dosyası kullanıyorum. Tek farkla crunch için exomizer kullanıyorum.

Kod:
@ECHO OFF
D:\C64Dev\Tools\ACME\acme.exe %1
IF %ERRORLEVEL%==0 GOTO CRUNCH
PAUSE
GOTO END
:CRUNCH
D:\C64Dev\Tools\ACME\exomizer.exe sfx sys -n %~n1.prg -o %~n1-packed.prg
IF %ERRORLEVEL%==0 GOTO LAUNCH
PAUSE
GOTO END
:LAUNCH
START D:\C64Dev\Tools\WinVICE\x64.exe %~n1-packed.prg
:END

Eğer derleme veya crunch etme esnasında bir hata oluşursa önce pause ile hatayı görmemi sağlıyor, bir tuşa basınca da batch sonlanıyor.

Eğer hata yoksa oluşan prg dosyası WinVICE ile açılıyor.

Not: Eğer programınızın başında basic satırı yoksa sys yerine başlangıç adresini ($080d gibi) kullanabilirsiniz. (örn: exomizer sfx $0900 -n out.prg -o final.prg)
« Son Düzenleme: Şubat 02, 2012, 04:53:14 ÖÖ Gönderen: Ö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
Simon (Özay Turay)
Yönetici
*****
Mesaj Sayısı: 7.756


Commodore Forever


Üyelik Bilgileri WWW
« Yanıtla #14 : Aralık 04, 2013, 16:31:11 ÖS »

Tutorial serisi 100. bölümde bitmiş. İlk mesajımdaki birleştirilmiş dokümanı güncelleyip upload ettim her ihtimale karşı.

Ayrıca proje yenilenmiş grafikler ve birçok eklemelerle cilalanarak Guns'n'Ghosts adında ticari bir oyuna dönüşmüş.




Satın almak için:

http://www.psytronik.net/main/index.php?option=com_content&view=article&id=105:gunsghosts&catid=34:commodore-64&Itemid=57

http://www.rgcd.co.uk/2013/04/guns-n-ghosts-cartridge-available-c64.html
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
Sayfa: [1] 2   Yukarı git
Yazdır
Gitmek istediğiniz yer: