Rlyeh röportajı

** Bazı

okuyucularımız seni veya çalışmalarını biliyor olsa da, biraz kendinden bahseder misin?

Rlyeh: Tabi ki. Her ne kadar 28 yıl önce Seville'de doğmuş olsam da, şu an Barcelona'da yaşayan bir İspanyolum. Hoşlandıklarım kısaca Elektronik Müzik, Retro bilgisayarlar ve video oyunları, (pek anime meraklısı olmasam da) apocalyptic manga, programlama, bazen crackleme, özgür yazılımlar, yabancı mutfak yemekleri pişirme (ve onlarla aileyi zehirleme), vajinal seks, ortaçağ/fantazi/sci-fi kitapları, anal seks, macera/sci-fi/destan filmleri ve oral seks. ok ok, *o kadar da çok* seks değil! şaka yapıyorum. Sonbaharı, yeşil manzarayı, eski kaleleri ve seksi severim. Hay Allah... İnsanları gülümsetmeyi de severim :-)

** GP32

icin mükemmel emulatörlerin ve tabi ki GP2X için minilib'in için tanınıyorsun. Minilib için planların nedir?

Rlyeh: Minimal library REminiscence'i GP2X'e hızlıca port edebilme amaçlı pratik olarak başladı ama son 15 ayda ciddi şekilde gitgide büyüdü ve güçlendi :P artık pek de *minimal* (ed: küçük) değil.

Uzun zamandır beklenen 0.C versiyonu Ocak/Şubat 2007'de piyasada olacak ve sitemde görebileceğiniz üzere değişiklikler/yenilikler listesi oldukça uzun. Hayal kırıklığına uğramayacağınızı umuyorum. 0.D için bir süre uğraşmayacağım, keza başka şeylerle de ilgilenme zamanı geldi (ed: emülatörlerinin portları), ama çok çok yoğunum! :P

** Peki GP32

emulatorlerinin GP2X portlari? (ve ikinci cpu core kullanimi planlari)

Rlyeh: Elbette, hepsini çevireceğim. Ama öncelikle HPL adlı cross-porting library'mi bitirmem gerek. HPL'in programcılara port için sistem bağımlılığı standart bir framework sunmasını umuyorum. Tek source, birçok binary. Ama işler ters de gidebilir. Programcılar yaratıcılıklarını belirli kurallara uymak için kısıtlamak zorunda kalacaklar ve code'larını bu kurallara ve sanal makina yapısına uygun hale çevirmek zorunda kalacaklar.

Mümkün olduğunda f*32 emülatörlerimi bu HPL ile sunacağım, ve sonuçta her emülatör tüm GP2X, GP32, XBOX, DC, Zodiac, Win32, Linux, MacOS X, vs. için binary üretecek. Yani HPL driverları kadar binary'ye.

GP2X konusuna dönersek, 2007 GP2X için en iyi yazılımların çıktığı dönem olacak (tabi ki tam olarak dualcore desteği ile). Keza 2007'de HH (ed: direkt hardware erişimi) çıkıyor. Buradan RobBrown'a el sallıyorum :-) (ed: robbrown gp2x'un hardware map'ini çıkartmaya çalışan ve open2x adlı _platform_ için uğraşan bir coder)

2007 GP2X yılı olacak.

** Bircok

çalışman diğer coderların çalışmalarından daha iyi. Eğitim/ Programlama geçmişin nedir?

Teşekkürler tatlım! *göz kırpma* :-) Kendimi piyasadaki birçok coder'dan daha iyi görmüyorum. Büyük ihtimalle çalışmalarıma olan obsesif yaklaşımım ve fırsat oldukça her detay için uğraşmam farkı oluşturuyor. Çok da önemli bir şey değil aslında.

Eğitimim pek ileri değil, üniversiteyi bitirmedim ve dört kere denedim. Beni sıkıyor. Cidden. Bir üniversite derecesine sahip olmam lazım ama bilgisayar mühendisliği çok yavaş, eski ve benim ilgimi çeken bir şey öğretmiyorlar. Gerektikçe kendim öğrenirim daha iyi.

** Mesleğin nedir?

Hep bir şekilde bilgisayarla ilgili işler yaptım: bir banka için network operatörlüğü, web designerlık ve şu an profesyonel programcılık (NDS).

** GP32

için programlamaya devam edecek misin?

Evet, elbette devam edeceğim. Uzun zaman önce GP32 ve Zodiac kullanıcılarına söz verdim. Birçok insan GP2X veya PSP'ye geçti ve eski handheld'leri artık yok biliyorum ama çalışmalarımı bitirmem lazım. Bir çalışmamı bitirmek yaşamımda benim için bir adım, bir ağaç dikmek veya çocuk sahibi olmak gibi. Mirasım olacaklar :-)

** Favori console'un nedir?

Bence favori bilgisayarımı sormalıydın, çünkü bugünlerde eski bilgisayar sistemlerini diğer sistemlerden daha çok seviyorum. Ama aralarından bir tanesini seçemem. Spectrum, C64 ve CPC'yi çocukluk anılarım ve geniş arşivleri için seviyorum. C64'ü müzikleri için de seviyorum. MSX'i yapısından (architecture) ve japon kartuşları (süper oyunlar!) için seviyorum, ya Amiga ve Atari ST'ler.. liste uzayıp gidiyor. Tanrım, 80'lerden beri yazılmış olan oyunların tadını çıkartmak için yeterli gün yok.

** GP2X

için düşüncelerin? Diğer console'lara göre onu daha iyi yapan nedir?

Uğraşmak için güzel bir hardware'i ve 320x240 3,5" ekranı (4:3'ü seviyorum) var. Ama en iyi şey onun homebrew scene'i (ed: ev yapımı ürünler scene'i). İğrenç tartışmalar, scene'i bırakan kızgın coder'lar veya bize baskı uygulayan copyright sahipleri yok. Canımız ne isterse onu yapıyoruz ve ortamın tadını çıkartıyoruz. GP2X'in 14 aydan daha az bir zamandır piyasada olmasına rağmen sahip olduğu yazılım adedi harika.

Ve sorun ne onu da söyleyeyim: GamePark Holdings :-) (ed: GPH = GP2X üreten firma) Pazarlama konusunda bir bok bilmiyorlar ve gerektiği şekilde müşteriler ile ilgilenmiyorlar. Ortada sunulmuş çok iyi fikirler olması ve bunları dikkate almaları gerekirken, dinlememeleri çok kötü.

** GP2X'te

keşke olsun dediğin özellikler nelerdir?

Daha iyi pad (şu an daha iyi), ses pot'u, WiFi, dual CPU yerine tek 400MHz'lik CPU, 3D işlemci, dokunmatik ekran, RCA/S-video TV-out jack, opsiyonel şarj edilebilir piller ve tabii ki çok iyi destek. Eksikliklerine rağmen, GP2X oldukça iyi bir hardware ve ondan gayet memnunum :-)

** GP32

emülatörlerindeki "f" neyi temsil ediyor?

İlk port ettiğim emülatör fMSX'di yani GP32 portu olarak fMSX32. Sonra InfoNES'i port ettim ve aynı isim mantığı ile fNES32 şeklinde 22 farklı emülatör olarak devam etti (bunların bir çoğunu piyasaya sunmadım). Diğer taraftan, büyük ihtimal İspanyol espri anlayışımdan olsa gerek, konuyla ilgili "açık saçık" espriler yapmaktan hoşlanıyorum. Bu yüzden birisi f ne demek dediğinde, "f" "fucking"'i temsil ediyor diyorum, yani fMSX32 = fucking MSX emulator for GP32. Bu kadar :-)

** GP2X

için GP32 emülatörlerini ne zaman yayınlarsın?

Sanırım 2007 yazında ama ne yazık ki kesin bir şey diyemiyorum.

** Programlamaya nasıl başladın?

İlk bilgisayarıma sanırım 6 yaşımdayken sahip oldum. Dragon32'ydi ve televizyonun önünde duran o garip obje beni büyülemişti. Paketini açtıktan sonra babam kitapçığını okurken bilgisayarı kilitlediğimi hatırlıyorum. Bana çok kızmıştı, ben ise bu BİLGİSAYAR'dan çok etkilenmiştim. Annem beni ve kız kardeşimi odadan çıkartıp, ortamı sakinleştirmişti. Babam sanırım, 15 - 20 dakika kadar daha kitapçığını okuduktan sonra "reset düğmesine basınız" ibaresini bulabilmişti. Birçok akşamımı televizyonun önünde saçma sapan oyunlar oynayarak ve ne yaptıklarını anlamak için upuzun BASIC satırları yazarak geçirmiştim. Ancak bu yazdığım BASIC kodlarının hiçbirini çalıştıramamıştım keza onlar başka bilgisayarlar içindi ve o zaman için bunların niye çalışmadığını hiç anlayamadım :_)

İkinci bilgisayarım 1988'de geldi. Harika bir Spectrum +2A ve tanrım, çok tatlıydı. CPC, C64 veya MSX gibi renkli değildi ama gençliğimi kasetlerle, dergileri tekrar ve tekrar okuyarak ve BASIC'i öğrenerek geçirdim. Assembler öğrenmek istiyordum ama kavrayamıyordum. Her neyse, diyebilirim ki Speccy benim ilk çocukluk takıntımdı. Ah, eski güzel oldskool günleri.. :-)

14 veya 15 yaşındayken, 3'üncü bilgisayarıma sahip oldum. Süper bir 286'ydı, DRDOS 5.0, 1024 KB RAM, 256 KB VGA ve 40MB HDD :-). Kurulu programlar arasında harika bir sanat eseri olan 'Turbo Pascal' vardı ki, örnekleri beni etkilemişti. Aylarımı ekrandaki bu garip satırları çözmeye ve ne işe yaradıklarını anlamaya çalışarak geçirdim. Diyebilirim ki, Pascal'ı kendi başıma öğrendim. function, procedure, unit, değişkenler vs. hepsi yavaş yavaş zihnimde anlam kazandı.

Açıkçası bütün bir programı yazmak için gereken temel birçok şeyi hiç anlamamış olmama rağmen var olan programları düzenleyerek (çoğu zaman) hiç beklenmedik sonuçlar elde ediyordum :-). Yeni yılda hediye olarak "Turbo Pascal Manual" istedim. Ve sonunda Pascal'ı tamamen öğrendim. Birkaç ay sonra Pascal listeleri beni korkutan PC-Intern 2.0 kitabını (ne güzel ve ağır bir kitap!) almıştım. Bilgisayarların daha önce hiç bilmediğim bir düşük seviye (low-level) dünyası vardı: interrupt'lar (kesmeler), DMA'lar, timer'lar, bellek, VRAM vs.! Sanırım 16 yaşındaydım ve tanrım, şok olmuştum. C öğrenmek zorunda olduğumu biliyordum, özellikle de PC-Intern 2.0 C örnekleri bana öğrenmek için yeni bir mücadele sunduğundan beri. Bir Turbo C/C++ kitabı aldım ve 3 uzun gün içinde C'yi öğrenmiştim. C oldukça Pascal'a benziyordu ama daha sıkıydı. O kadar çok sevdim ki hala daha iyi bir programlama dili bulamadım. Bir 14400 bps modem almak ve BBS'lere bağlanmak gerisini getirdi: Demoscene! Bir sürü güzel eğitici döküman, assembler ve muhteşem efektler: yıldız (starfield), alev, plazma'lar, tünel'ler vs.. Ne yıldı ama! Daha o noktada bir inektim (geek).

O zamandan beri birçok bilgisayar, handheld ve console kullandım ve her birinde gayet iyi kod yazabildiğim 24 programlama dilini öğrendim. Çünkü bu sistemleri seviyordum, ve programlamayı seviyordum. Hepsi size içeriğini küçük ve anlaşılır parçalara bölerek soyutlaştırıp, sanallaştırarak tek bir insan beyninin algılayabilmesini sağlayacak aynı temelleri paylaşıyordu.

Çoğu zaman insanları programlama öğrenmeye cesaretlendirmeye çalışıyorum. Bu sanki gizli bir mesajın şifresini kırmak, güzel bir bulmacayı çözmek gibi bir şey. Sadece eğlenmek için! :-)

yapımı(homebrew) oyunlarla uğraşmak konusunda bir planın var mı? Bir süre önce bir tane yaptığını hatırlıyorum (hiç bitmemişti), çok güzel grafikleri vardı ama bir oyundan çok bir demoya benziyordu...

Evet, o oyunu bir süre önce tasarlamıştım. Grafikerim benden daha meşgul (tembel? :-) ne yazık ki, bu bizim ana engelimiz.

Oyun verilen kısa zamanda küçük hayvanları yakalamaya çalıştığınız, Bomberman'imsi hızlı bir oyun olarak tasarlandı. Dalgalar, rüzgar, batmış ağaçlar, balıklar ve genel olarak fizikler sunulacak düşmanlardı. Ve bütün fizik motoru oyunun bir parçasıydı, sadece göz alıcı bir efekt değildi. Bunun dışında, GP2X veya NDS gibi diğer handheld'lere de port edilebilirdi.

Şimdi ilgi çekici bölüm. Bir gün bir grafikerin benimle güçlerini birleştirmesini bekliyorum. Ya da grafikleri "açık kaynak" yapar ve herkesin grafik/animasyon katkısında bulunmasına imkan tanıyabilirim. Oyun tahmin ettiğiniz kadar çok grafik gerektirmiyor, çünkü çoğu zor iş programlama ile hallediliyor: su, yansımalar, alpha blending vs.. Yani kendini motive olmuş hisseden herhangi bir grafiker/animatör varsa bana bir özel mesaj bırakması yeter :-).

** Sony'nin PSP'si

için programlamayı düşündün mü?

Evet, PSP için de programlama hoş olabilir. 16:9 ekran emülasyon konusunda beni korkutuyor (çünkü tüm sistemler 4:3), ama yine de 4.1"lik 16:9 bir ekranda 4:3 de kötü değil.. sanırım! En büyük dezavantaj... mmm.. PSP'm yok :-)

** Yazılım

geliştirdiğin sistem nedir?

Eski bir ACER laptop (model 1714i, CPU P4 HT 3.40 GHz, 1 GB RAM, ve 120 GB HD, 17" TFT, extended keyboard).

Gerçi GP32 kodlarımın çoğunu Pentium 3 500 MHz ve 128 MB RAM ile yazmıştım.

IDE'min temeli bir DOS box (edit!) ve kendi devkit'im (web'te bulabileceğiniz birden çok devkit'in ve kendi birkaç komut satırı aracımın derlenmesinden oluşan). Devkit kendi içinde derinlemesine test edilmiş durumda ve öyle tatlı ve kullanması kolay ki (sadece iki komut 'compile' ve 'link') birçok sefer benden onu yayınlamamı istediler. Tüm devkit'in paketli hali 350 MB ve içinde GP32, GP2X, NDS, GBA, NGC, XBOX, PS2, WIN32 ve DC için bir sürü derleyici ve kütüphane içeriyor.

** GP2X

için hiç ticari bir yazılım yayınlamayı düşünüyor musun yoksa bütün o muhteşem çalışmalarını bedava mı dağıtacaksın?

Herkes için ücretsiz :-). Kazancın çok düşük olduğu, küçük topluluklardaki ticari yazılımlardan nefret ediyorum.

** GP2X

için GP32'den daha uzun bir ömür görebiliyor musun?

Bundan emin değilim. Tüketim oranı arttıkça elektronik ürünlerin ömürleri de kısalıyor. Her neyse, hayat sürenin tadını çıkar ve gerisini boş ver :-)

** SDL

kütüphanesi hakkındaki düşüncelerin neler?

Ne etkileyici bir çalışma. Yine de, daha çok sistem ekledikçe kütüphaneyi daha büyük ve yavaş hale getiriyorlar. Umarım HPL'de bundan kaçınabilirim :-).

** Programlamada

en kısa süre içinde başardığınız en büyük başarı neydi?

Büyük ihtimalle tam hızda çalışan, kare atlamayan, çalışan kayıt özelliği bulunan, tam kristal seslere sahip, tam ekran desteği bulunan ve hepsi beraber 66 MHz'de çalışan tüm bir emülatörü (fCOL32) GP32'ye port edişimdi. Süre rekoru: 44 dakika. Ya da belki de sıfırdan, dokümanıyla birlikte tamamen olay bazlı ve nesne yönelimli olan bir programlama dilini geliştirmiş (E programlama dili) olmamdı. Süre rekoru: 7 gün.

** Şimdi

profesyonel programcı (NDS için oyunlar yazıyor) olarak çalıştığına göre, senden artık para için kod yazdığın ve scene için yaptıkların bedava olduğu gerçeğinden yola çıkarak bir miktar tembellik bekleyebilir miyiz? Ücretini alabileceğin halde bedava kod yazdığın için para kaybettiğini düşünüyor musun?

Hayır. Fikrimi asla değiştirmeyeceğim. Scene'e ne veriyorsam sadece hobi, ve freeware rules. Her neyse bağışlar var. Ve bağış yapmak coder'ların her zaman müteşekkir olacakları gönüllü bir davranış! :-)

** Kaç

tane eski (ve pekte eski olmayan) makinan var? Hatırlayabiliyor musun? Hangilerini? (Koleksiyonunla gurur duyuyor olmalısın)

90 kadar sistem (aynı olanlarını saymıyorum, mesela 3 tane GP32'im var ama tek sayıyorum) :-)

En az tanınanı: FM-Towns Marty Car Navigation'dır herhalde.

En ağırı: Siyah ve şirin Apple Performa 5500.

En hafifi: Spectrum 48 herhalde.

En pahalısı: Zodiac 2 (çıkar çıkmaz almıştım)

En çok kullanılanı: Spectrum +2A ve MSX Philips NMS 8245.

En az kullanılanı: Dreamcast (üzgünüm millet! :-)

Diğer ilginçlikler: MGT Sam Coupé, Panasonic 3DO, Philips 450 CD-i, MSX Turbo-R ST, Atari ST Falcon, vs...

** Projelerinin

bu kadar iyi cilalanmış ve tam olmasını sağlayacak kadar nasıl motive ve odaklanmış halde kalabiliyorsun? Çok organize, disiplinli birisi misin? İşlerini bitirmek için kullandığın bir araç yada metot var mı?

Sadece yaptığım işi seviyorum. Ne organizeyim ne de disiplinli. En iyi metot ise saf takıntıdır.

Gnostic