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 YazılımC64 BASIC Kısa Kod Yarışması - irqHack64 Ödüllü
Sayfa: 1 ... 21 22 [23] 24 25 ... 30   Aşağı git
Yazdır
Gönderen Konu: C64 BASIC Kısa Kod Yarışması - irqHack64 Ödüllü  (Okunma Sayısı 237630 defa)
0 Üye ve 2 Ziyaretçi konuyu incelemekte.
eins
Uzman
*****
Mesaj Sayısı: 1.816


A.K.A. deliMawi


Üyelik Bilgileri
« Yanıtla #330 : Haziran 01, 2017, 02:35:56 ÖÖ »

uyku tutmadı, 182 byte

Kod:
1 poke53265,59:poke53272,24:fora=0to3e3:poke8191+a,d:y=int(a/320)*8+(aand7):d=0
2 print:forp=0to7:w=abs(((a-(yand56)*40)and-8)+p-99)*2/3
3 d=d*2-(w*4<yandw>y-48ory>26andw<48-y):nextp,a
Logged

Doberman ♦ megaOne ♦ HDMI-64 ♦ HDMI-520 ♦ NewSchool
eins
Uzman
*****
Mesaj Sayısı: 1.816


A.K.A. deliMawi


Üyelik Bilgileri
« Yanıtla #331 : Haziran 01, 2017, 02:54:37 ÖÖ »

179 byte ...

Kod:
1 poke53265,59:poke53272,24:fora=0to3e3:poke8191+a,d:y=int(a/320)*8+(aand7):d=0
2 print:forp=0to7:w=abs((a-(yand56)*40and-8)+p-99)*.6
3 d=d*2-(w*4<yandw>y-48ory>26andw<48-y):nextp,a
Logged

Doberman ♦ megaOne ♦ HDMI-64 ♦ HDMI-520 ♦ NewSchool
Skate
Uzman
*****
Mesaj Sayısı: 1.479


A Sinner Scener


Üyelik Bilgileri WWW
« Yanıtla #332 : Haziran 01, 2017, 03:29:46 ÖÖ »

King of the filled stars. Ama o andlerin bir kısmından kaçış yok gördüğün gibi.

İlk gözüme çarpan optimizasyon.

Kod:
y=int(a/320)*8+(aand7)

yerine

Kod:
y=a/40and-8oraand7

175 byte

Kod:
1 poke53265,59:poke53272,24:fora=0to3e3:poke8191+a,d:y=a/40and-8oraand7:d=0
2 print:forp=0to7:w=abs((a-(yand56)*40and-8)+p-99)*.6
3 d=d*2-(w*4<yandw>y-48ory>26andw<48-y):nextp,a

Şaka maka 172 byte'ın altına inme potansiyeli yüksek.
« Son Düzenleme: Haziran 01, 2017, 03:31:46 ÖÖ Gönderen: Skate » Logged
eins
Uzman
*****
Mesaj Sayısı: 1.816


A.K.A. deliMawi


Üyelik Bilgileri
« Yanıtla #333 : Haziran 01, 2017, 04:00:52 ÖÖ »

Artık cidden yatıyorum, 176 byte, dolu üçgen ...

Kod:
1 poke53265,59:poke53272,24:fora=0to3e3:poke8191+a,d:y=(a/320or0)+(aand7)/8
2 d=0:print:forp=0to7:w=abs((a-(yand7)*320and-8)+p-99)/12
3 d=d+d-(w*4<yandw+6>yory>3and6>y+w):nextp,a
Logged

Doberman ♦ megaOne ♦ HDMI-64 ♦ HDMI-520 ♦ NewSchool
eins
Uzman
*****
Mesaj Sayısı: 1.816


A.K.A. deliMawi


Üyelik Bilgileri
« Yanıtla #334 : Haziran 01, 2017, 04:01:49 ÖÖ »

Süpersin, ben 176 ya kadar gelebilmiştim ...
Logged

Doberman ♦ megaOne ♦ HDMI-64 ♦ HDMI-520 ♦ NewSchool
Skate
Uzman
*****
Mesaj Sayısı: 1.479


A Sinner Scener


Üyelik Bilgileri WWW
« Yanıtla #335 : Haziran 01, 2017, 04:16:21 ÖÖ »

174 byte

Kod:
1 poke53265,59:poke53272,24:fora=0to3e3:poke8191+a,d:e=aand7:y=a/40and-8ore:d=0
2 print:forp=0to7:w=abs(a-e-(yand-8)*40+p-99)*.6
3 d=d*2-(w*4<yandw>y-48ory>26andw<48-y):nextp,a

Edit: Senin optimizasyonlarını görmeden yaptım bunları. Seninkilerle birleşirse daha da uçabilir, bakıyorum şimdi.
Logged
eins
Uzman
*****
Mesaj Sayısı: 1.816


A.K.A. deliMawi


Üyelik Bilgileri
« Yanıtla #336 : Haziran 01, 2017, 04:37:08 ÖÖ »

174 byte, hala potansiyel var ama halim kalmadı... Kahkaha

Kod:
1 poke53265,59:poke53272,24:fora=0to3e3:poke8191+a,d:y=a/40and-8oraand7:d=0
2 print:forp=0to7:w=abs((a-(yand56)*40and-8)+p-99)/2
3 d=d*2-(w*4<yandw>y-48ory>26andw<48-y):nextp,a
Logged

Doberman ♦ megaOne ♦ HDMI-64 ♦ HDMI-520 ♦ NewSchool
eins
Uzman
*****
Mesaj Sayısı: 1.816


A.K.A. deliMawi


Üyelik Bilgileri
« Yanıtla #337 : Haziran 01, 2017, 04:39:49 ÖÖ »

26, 24 olsa da gözle bir fark olmuyor. Bundan yola çıkarak çarpanı küçülterek, örneğin /4 yapabilirsek, sabit değerler, w, 12, 6, 12 yapılabilir. Bu da teorik olarak 3 byte kısaltır. Ama cidden haim kalmadı düşünemiyorum artık... Kahkaha
İyi geceler...
 
Logged

Doberman ♦ megaOne ♦ HDMI-64 ♦ HDMI-520 ♦ NewSchool
Skate
Uzman
*****
Mesaj Sayısı: 1.479


A Sinner Scener


Üyelik Bilgileri WWW
« Yanıtla #338 : Haziran 01, 2017, 04:43:00 ÖÖ »

171 byte

170'in altına bile iner derken şaka yapmıyormuşsun.

@wizofwor: Yöntem delimawi'ye ait olduğu için ben farklı bir yöntem bulmadığım sürece benim yaptığım optimizasyonları yarışma dışı tutuyorum.

Kod:
1 poke53265,59:poke53272,24:fora=0to3e3:poke8191+a,d:e=aand7:h=a/40and-8
2 y=hore:d=0:print:forp=0to7:w=abs(a-e-h*40+p-99)*.6
3 d=d+d-(w*4<yandw+48>yory>26andy+w<48):nextp,a
Logged
eins
Uzman
*****
Mesaj Sayısı: 1.816


A.K.A. deliMawi


Üyelik Bilgileri
« Yanıtla #339 : Haziran 01, 2017, 04:50:54 ÖÖ »

Şu anda son kodu, y=hore, yehuuu, horaaa, hobareyyyy şeklinde görüyorum... Yarışma bahane, eğlence şahane.
Logged

Doberman ♦ megaOne ♦ HDMI-64 ♦ HDMI-520 ♦ NewSchool
eins
Uzman
*****
Mesaj Sayısı: 1.816


A.K.A. deliMawi


Üyelik Bilgileri
« Yanıtla #340 : Haziran 01, 2017, 04:54:18 ÖÖ »

Gel *.6 yı /2 yapalım, 170 byte olsun, gene yıldız olsun...
Logged

Doberman ♦ megaOne ♦ HDMI-64 ♦ HDMI-520 ♦ NewSchool
Skate
Uzman
*****
Mesaj Sayısı: 1.479


A Sinner Scener


Üyelik Bilgileri WWW
« Yanıtla #341 : Haziran 01, 2017, 05:04:15 ÖÖ »

sabit değerler, w, 12, 6, 12 yapılabilir. Bu da teorik olarak 3 byte kısaltır.

Bu arada bunu tam anlayamadım. 12,6,12 olduğunda sadece 1 byte kısalmış olmuyor mu?

Edit: w*4 -> w oluyor, anladım.
« Son Düzenleme: Haziran 01, 2017, 05:07:20 ÖÖ Gönderen: Skate » Logged
Skate
Uzman
*****
Mesaj Sayısı: 1.479


A Sinner Scener


Üyelik Bilgileri WWW
« Yanıtla #342 : Haziran 01, 2017, 05:16:20 ÖÖ »

170 bytelık versiyonu buraya bırakıp yatıyorum, 170'in altına kesin inecek bu.

Kod:
1 poke53265,59:poke53272,24:fora=0to3e3:poke8191+a,d:e=aand7:h=a/40and-8
2 y=hore:d=0:print:forp=0to7:w=abs(a-e-h*40+p-99)/2
3 d=d+d-(w*4<yandw+48>yory>26andy+w<48):nextp,a
Logged
hades
Üye
****
Mesaj Sayısı: 392



Üyelik Bilgileri
« Yanıtla #343 : Haziran 01, 2017, 08:20:27 ÖÖ »

648 nolu adrese bir baksanıza. poke 648, grafik ekranı/256 ve print "clr" ile bir şeyler çıkar mı?
https://www.c64-wiki.com/wiki/648
Logged
eins
Uzman
*****
Mesaj Sayısı: 1.816


A.K.A. deliMawi


Üyelik Bilgileri
« Yanıtla #344 : Haziran 01, 2017, 10:19:37 ÖÖ »

169 byte ...

Kod:
1 poke53265,59:poke53272,24:fora=0to3e3:poke8191+a,d:e=aand7:h=a/40and-8
2 y=h+e:d=0:print:forp=0to7:w=abs(a-e-h*40+p-99)/2
3 d=d+d-(w*4<yandw+48>yory>26andy+w<48):nextp,a
Logged

Doberman ♦ megaOne ♦ HDMI-64 ♦ HDMI-520 ♦ NewSchool
Sayfa: 1 ... 21 22 [23] 24 25 ... 30   Yukarı git
Yazdır
Gitmek istediğiniz yer: