2 puan yazan GN⁺ 2024-03-23 | 1 yorum | WhatsApp'ta paylaş
  • Picotron, sanal donanım üzerinde Lua uygulamaları oluşturup çalıştırmaya ve paylaşmaya yarayan, kendi kendine yeterli bir yaratım ortamıdır; küçük oyunları ve araçları tek bir masaüstünde ele almayı sağlar
  • 480x270 64 renkli ekran, sanal dosya sistemi, POD dosya biçimi, PFX6416 ses sentezleyici ve süreç başına Lua 5.4 VM temel çalışma modelini oluşturur
  • Uygulamalar, projeler ve dağıtım paketlerinin tamamı kartuş olarak ele alınır; .p64 metin dosyası ya da en fazla 256k ROM verisi içeren .p64.png olarak kaydedilip paylaşılır
  • Masaüstünde sekmeli çalışma alanı, katlanabilir araç tepsisi ve dosya yığınları bulunur; kod, grafik, tilemap, müzik ve ses efekti editörleri varsayılan olarak dahildir
  • Şu anda Beta aşamasındadır; Windows, Mac, Linux ve HTML dışa aktarmayı destekler, gelecekteki güncellemelere erişim dahil $19.99 fiyatla satılır

Sanal donanım üzerinde yaratım ortamı

  • Picotron, Fantasy Workstation olarak konumlanan, sanal donanım üzerinde çalışan kendi kendine yeterli bir yaratım ortamıdır
  • Kullanıcılar Lua uygulamaları oluşturabilir ve çıktıları çeşitli yollarla çalıştırıp paylaşabilir
    • Picotron masaüstünde çalıştırma
    • Kartuş dosyası olarak paylaşma
    • Bağımsız HTML ve ikili dağıtımlar olarak dışa aktarma
  • Ekran varsayılan olarak 480x270 64 renktir; 240x135 veya 160x90 olarak da çalıştırılabilir
  • Tam ekran modunda özel palet kullanılabilir
  • Yerleşik grafik API’si ekrana düşük seviyeli erişim sağlar
    • 8x8 doldurma desenleri
    • Palet değiştirme ve blending
    • Stencil bitleri
    • Perspektif düzeltmeli doku rasterizasyonu için tline3d

Dosyalar, ses ve çalışma modeli

  • Dosya sistemi, ana sistemin yalnızca gerekli bir kısmını açığa çıkaran bir sanal dosya sistemidir
  • Picotron iç dosyaları POD (Picotron Object Data) biçimini kullanarak Lua tablolarını doğrudan diske kaydedip diskten yükleyebilir
    • Kayıt verileri veya bölüm verileri Lua tabloları halinde gruplanıp store() ile pod’a kaydedilebilir
  • Ses, PFX6416 adlı 64 düğümlü, 16 kanallı gerçek zamanlı sentezleyiciyle üretilir
    • Düğümler wavetable’dan sinyal üretir veya FM/RING modülasyonu, delay, HP/LP rezonans filtreleri ve waveshaping ile sinyali değiştirir
    • Kullanıcı enstrümanı tasarımını da içeren müzikler diskte 5~20k boyutunda saklanabilir
  • Çalışma ortamı, her süreç için biraz değiştirilmiş ayrı bir Lua 5.4 VM kullanır
    • Sanal CPU süreçler arasında paylaştırılır ve saniyede en fazla 8M VM komutu çalıştırır
    • Picotron kartuşları farklı platformlarda tutarlı bir hızda çalışabilir
    • Yüksek performanslı bir masaüstünde sorunsuz çalışıyorsa, eski bir netbook’un web ortamında da genel olarak benzer görünmesi hedeflenerek tasarlanmıştır

Kartuş merkezli dağıtım biçimi

  • Uygulamalar, projeler ve dağıtım paketlerinin tamamı kartuş adı verilen aynı tür olarak ele alınır
    • Her kartuş normal bir klasör gibi davranır ve programı çalıştırmak için gereken kaynak dosyaları ile varlıkları içerir
    • Ana sistemde tek bir metin dosyası .p64 olarak kaydedilir ve RAM’e sığan boyuta kadar olabilir
    • Paylaşılabilir PNG biçimi .p64.png, en fazla 256k ROM verisi içerebilir

Masaüstü ve yerleşik araçlar

  • Picotron masaüstü, sekmeli çalışma alanları ve tüm çalışma alanlarından erişilebilen katlanabilir bir araç tepsisi (tooltray) sunar
  • Araç tepsisi, sık kullanılan dosyalara ve widget’lara erişmek için ikinci bir masaüstü gibi çalışır
  • Dosyalar birbirinin üzerine bırakılarak düzenli yığınlar oluşturulabilir ve fare tekerleğiyle yığınlar arasında gezilebilir
  • Varsayılan editörler kod, grafik, tilemap, müzik ve ses efektlerini kapsar
    • Bu editörlerin kendileri de Picotron ile yapılmıştır
    • Sınırsız geri alma yığını, GUI ve dosya yönetimi /system/lib standart kütüphanesini kullanır
  • Kullanıcılar canlı duvar kâğıtları, ekran koruyucular, simgeler ve widget’lar oluşturabilir; iş akışını istedikleri şekilde düzenleyebilir

Pipeline’lar, platform desteği ve fiyat

  • Picotron, sıkı biçimde entegre edilmiş bir grafik pipeline’ı ve ses pipeline’ı üzerine kuruludur
    • graphics ve audio pipelines, düşük güçlü ana makinelerde ve web’de de çalışabilir
    • Rengi değiştirilmiş sprite çizimi veya ses efekti tetikleme gibi yaygın işler için basit API’ler sağlar
    • Temel veriler ve makine durumu sanal RAM’de açığa çıkarılır
  • Mevcut durumu Beta aşamasıdır
    • Windows, Mac, Linux ve HTML dışa aktarma özellikleri tamamlanmıştır
    • Çevrimiçi yüksek skorları ve dosya paylaşımını destekler
    • API ile video ve ses pipeline’ları hâlihazırda doğrulanmış durumdadır
    • Gelecek planları Picotron Roadmap’te görülebilir
  • Fiyatı $19.99’dır; satın alanlar gelecekteki güncellemelere erişebilir
  • Mevcut PICO-8 ve Voxatron müşterileri indirimli yükseltmeden yararlanabilir

1 yorum

 
GN⁺ 2024-03-23
Hacker News yorumları
  • PICO-8 ile çok eğlendim ve temel çekiciliği hâlâ duruyor, ama artık CX16, Mega65, Agon Light gibi yeni nesil “gerçek” retro donanımlara geçtim
    Kart tasarımı, çipler ve giriş/çıkış portları olunca teknik özellikler daha sağlam oluyor; Picotron gibi yeni makineler de giriş/çıkış özellikleri içinde yapılabilecekleri epey tavizsiz biçimde zorlayabiliyor
    Emülasyon da mümkün, donanıma doğrudan erişmek de; BASIC, C, Forth gibi istediğiniz dili çalıştırabiliyorsunuz
    Pico ailesi gibi gerçek 8-bit üzerinde Lua’yı yorumlayıcıyla çalıştırmak yavaş olabilir, ama bunun yerine çapraz derleyici temeli olarak kullanılırsa başka türden bir kodlama meydan okumasına dönüşüyor
    Yön şu: “O proje için gereken tam doğru kodu üreten nihai geliştirme ortamını oluştursak nasıl olur?” Bu, yüksek düzeyde optimize edilmiş PICO-8 oyunlarında ya da C64, Spectrum, A800 için yeni demolarda da, büyük donanımı eski makineler tarafında kullanıp iki tarafın da klişelerini yok sayma biçiminde ortaya çıkıyor

    • Bu makinelerin hep aynı retro CPU’lar olan Z80, 6502, 8080 ya da FPGA üzerinde VDP kopyalarıyla sınırlı kalmamasını isterim
      Retro tarzı 2D/blit tabanlı makineler istiyorum, ama Cortex-M, Z8000, 68000, düşük maliyetli RISC-V gibi daha gelişmiş donanımlar olsun
      Önyükleme ROM’una BASIC koysunlar, ama 90’lar tarzında daha da büyüyebilecek alan bıraksınlar
      Commodore 64’ün büyüsünü geri getirmek istemelerini anlıyorum, ama kişisel olarak Amiga, Atari, BeBox gibi hackleme dönemleri bana çok daha parlak görünüyor
    • Çocuklarımla Pico-8’de basit oyunlar yapıp temel geometri öğrenerek gerçekten çok eğlendik
      Pico-8’den gelen topluluk Picotron’da da şimdiden cat/wget/grep[1] ve elbette Minesweeper[2] uygulamış durumda
      Joseph White/zep’in yaptığı her şey, herkesin utanıp sıkılmadan bir şeyler yapıp paylaştığı ve keyif aldığı erken internet ve IRC günlerini geri getiriyor
      zep sayesinde sıradan insanlar için de bilişim yeniden eğlenceli hâle geliyor
      [1]: https://www.lexaloffle.com/bbs/?tid=140771
      [2]: https://www.lexaloffle.com/bbs/?tid=140678
    • Lua’nın gerçek 8-bit üzerinde yorumlayıcıyla çalıştırıldığında BASIC’ten mutlaka çok daha yavaş olacağından emin değilim
      Tasarımı çok küçük ve ortogonal
  • Yaklaşık 30 dakika kurcaladım ve hâlâ gülümsemeye devam ediyorum. Gerçekten çok eğlenceli
    Geçmişte Pico-8’i çok kullandığım için hemen bir şeyler yapmak kolaydı; Pico-8, Aseprite, Blender ve Propellerhead ReBirth ile birlikte benim keyif veren yazılımlar sepetimdeki dört şeyden biri
    Pico-8’in hedeflerine ve bilinçli kısıtlarına muazzam bir özen verilmişti; şu ana kadar Picotron’da da aynı düzeyde sevgi ve düşünce hissediliyor
    Çok sevimli ve bir şeyler yapmayı bırakmak istemiyorum
    Birçok Pico-8 klonu denedim ama hepsi işin özünü kaçırmış gibiydi. Kısıtları “iyileştiriyorlar” ama tatmin edici olmuyordu
    İlginçtir, ben de oyun jam’i prototiplemesi için “daha fazla özelliği olan Pico-8” gibi bir JavaScript sürümünü üç kez yapmaya çalıştım; ama her seferinde klonlar gibi, yeterince işlevsel olsa da ilham vermediği için bıraktım
    Pico-8 ve Picotron’u kimin yaptığını bilmiyorum, ama böylesine sevilesi yazılımlar üreten harika insanlara saygılarımı sunuyorum

    • Ben de Aseprite’i o kategoriye koyarım, ama benim için en büyüğü Godot
      Yıllarca sıfırdan OpenGL projeleri yaptıktan ve Unity’yi de biraz kurcaladıktan sonra, 2020 civarında Godot’ya %100 daldım ve o zamandan beri bana en çok keyif veren yazılım oldu
    • Kişisel olarak TIC-80’i çok daha fazla seviyorum
      Daha iyi ekran oranı, başka diller kullanabilme ve özel Lua standart kütüphanesini kullanmak zorunda olmama taraflarını daha çok seviyorum
  • “Picotron uygulamaları yerleşik araçlarla yapılabilir ve özel bir 256KB PNG kartuş biçimiyle diğer kullanıcılarla paylaşılabilir” kısmını görünce, günümüz bağımsız yazılımlarında varlıkları PNG dosyası içinde dağıtma eğilimi göze çarpıyor. Neden böyle acaba?

    • Çalıştırılabilir bir oyunun/programın bir görüntünün içinde olması eğlenceli bir unsur; ayrıca PNG kayıpsız bir biçim, ZIP ile aynı sıkıştırma algoritmasını kullanıyor ve birçok dilde kodlama/kod çözme kütüphaneleri var
      Bu yüzden uygulama veri biçimi olarak fena bir aday değil
    • Picotron, PICO-8’i yapan kişi tarafından yapıldı ve bildiğim kadarıyla fantazi konsol kavramını PICO-8 popülerleştirdi
    • Eğlenceli ve paylaşması kolay
    • Çoğunlukla eğlence için. Ayrıca PNG’de veri saklamak için uygun bir alfa kanalı var
      Bildiğim kadarıyla bu geliştiricinin önceki konsolu PICO-8 bu akımı başlattı
  • Eğlenceli küçük bir şey, ama dikkatli olmak gerekiyor. Hâlâ hatalar ve çökmeler var; pürüzlü yanları da duruyor
    Zep’in neyi hedeflediği bir ölçüde görülüyor, ama birçok kısmı epey gizemli ve API belgeleri de neredeyse yok
    İnsanlar gerçekten de bir şeyi nasıl yapacaklarını anlamak için tüm global Lua tablolarını yazdırıyor
    0.1a kadar kötü değil, ama 0.1c için hâlâ cilalanması gereken yerler var

  • Pico-8, bugüne kadar kullandığım yazılımlar arasında en keyif verenlerden biriydi; topluluğun Picotron ile neler ortaya çıkaracağını merakla bekliyorum.
    Makinenin kendisi, hem Pico-8 hem de Picotron için kapalı kaynak; ancak kullanıcı programları açık kaynak olmasa bile kaynak kodları görülebiliyor.
    Eğitim açısından gerçekten çok iyi ve hoşuma gidiyor.
    Uyumlu uygulamalar çıkacaktır, ama Pico-8 araçları o kadar rafineydi ve fiyatı da o kadar ucuzdu ki 10 dolar vermemek için bir neden yoktu.
    Açık kaynak bir uygulama programları çalıştırabilir, fakat IDE, piksel sprite/harita düzenleyici, müzik tracker’ı gibi sevimli araçları beraberinde sunmayabilir.
    O parayı fazlasıyla hak ediyordu; Pico-8, para verip aldığım yazılımlar arasında nefret etmediğim az sayıdaki üründen biri.
    Özetle Pico-8 de harika, topluluk ve ücretsiz programlar da harika; bu yüzden Picotron’un da harika olacağını düşünüyorum. Uzun zamandır hayranıyım.

    • Birinin Pico-8’in diğer fantasy console’lardan neden bu kadar daha iyi olduğunu yazmasını isterdim.
      Özellikle son dönemde WASM-4 ilgimi çekti; başka birinin bahsettiği TIC-80 de iyi görünüyor.
      Pyxel hakkında okuyup ilham aldığımı da hatırlıyorum.
      Üçünün de ücretsiz olma avantajı var; o hâlde neden Pico-8’e para ödeyeyim?
    • Pico-8 de harika, ama https://tic80.com/ da gerçekten çok güzel.
    • Pico-8’in en keyif veren yazılımlardan biri olduğuna katılıyorum, ama görmezden gelmesi benim için çok zor olan bir şikâyetim var: editör yazı tipi çok zor okunuyor.
      Alışmaya çalıştım ama olmadı.
      Yine de oyunlar çok oynanabilir, eğlenceli ve ilham verici; topluluğu da bundan daha iyi olamazdı.
  • “CPU: saniyede 8 milyon Lua VM komutu” değerinin yaklaşık bir sayı mı, yoksa tutarlılık için konmuş bir sınır mı olduğunu merak ediyorum.
    FAQ’daki “CPU ne kadar hızlı?” maddesi yalnızca hızlı olduğundan ve PICO-8’den hızlı olduğundan bahsediyor.

    • Bu sınırlı bir hız ve kesin ayrıntılar hâlâ ayarlanıyor.
      Aslında ekran çok daha büyük olduğu için PICO-8’e kıyasla elde kalan pay çok da fazla değil.
      PICO-8’de mümkün olmayacak kadar CPU kullanan bir iş yapmak istiyorsanız düşük çözünürlüklü ekran modunu kullanmanız gerekir.
    • PICO-8 de böyle yaptığı için bunun sınırlı bir hız olduğunu düşünüyorum: https://pico-8.fandom.com/wiki/CPU
  • Kişisel olarak bende gerçekten iyi bir his uyandırıyor.
    Pico-8 harika bir yazılım olsa da bana biraz fazla eski ve gıcırdayan bir şey gibi geliyor; Picotron ise çocukluğumdaki hissiyata çok daha yakın.
    Bir an önce kurcalamak istiyorum.

  • Şu Clockwork cihazlarından birinde çalıştırmak çok güzel olurdu: https://www.clockworkpi.com/shop?page=2

    • Ödünç aldığım bir Clockwork üzerinde pico-8 çalıştırdım; çoğu uygulamada iyi çalıştı.
    • uConsole pico-8 desteğinin reklamını yaptığına göre, en baştan beri böyle bir şeyi düşünmüşler gibi görünüyor.
  • Ucuz bir okuyucu yuvasının altına sokulan karton üzerindeki QR kodu gibi bir fiziksellik olsa hoş olurdu.
    8-bit hissiyatını gerçekten vermek için belli ölçüde fiziksel bir duygudan kaçmak mümkün değil. Düşük kaliteli ekran ve sertçe basılacak büyük düğmeler de buna dahil.

  • PICO-8 ile tamamen uyumlu değil gibi görünmesi biraz üzücü.
    PICO-8 oyunları yapmak için mükemmel bir ortam olacağını hayal etmiştim.

    • Hangi açıdan böyle olduğunu merak ediyorum. Şu aşamada değişme ihtimali olabilir.