2 पॉइंट द्वारा GN⁺ 2024-03-23 | 1 टिप्पणियां | WhatsApp पर शेयर करें
  • Picotron वर्चुअल हार्डवेयर पर Lua ऐप बनाने, चलाने और साझा करने के लिए एक self-contained क्रिएटिव एनवायरनमेंट है, जिसमें छोटे गेम और टूल्स को एक ही डेस्कटॉप के भीतर संभाला जा सकता है
  • 480x270 64-रंग डिस्प्ले, वर्चुअल फाइलसिस्टम, POD फाइल फॉर्मेट, PFX6416 ऑडियो सिंथेसाइज़र, और प्रति-प्रोसेस Lua 5.4 VM इसका बेसिक एक्ज़ीक्यूशन मॉडल बनाते हैं
  • ऐप, प्रोजेक्ट और डिप्लॉयमेंट बंडल सभी को कार्ट्रिज माना जाता है, और इन्हें .p64 टेक्स्ट फाइल या अधिकतम 256k ROM डेटा वाली .p64.png के रूप में सेव और शेयर किया जाता है
  • डेस्कटॉप में टैब्ड वर्कस्पेस, फोल्ड होने वाली टूल ट्रे और फाइल स्टैक हैं, और कोड, ग्राफिक्स, टाइलमैप, म्यूज़िक और साउंड इफेक्ट एडिटर बिल्ट-इन आते हैं
  • यह फिलहाल Beta चरण में है, Windows, Mac, Linux और HTML एक्सपोर्ट को सपोर्ट करता है, और भविष्य के अपडेट एक्सेस सहित $19.99 में बेचा जा रहा है

वर्चुअल हार्डवेयर पर बना क्रिएटिव एनवायरनमेंट

  • Picotron खुद को Fantasy Workstation कहता है और यह वर्चुअल हार्डवेयर पर चलने वाला एक self-contained क्रिएटिव एनवायरनमेंट है
  • उपयोगकर्ता Lua ऐप्स बना सकते हैं और उनके आउटपुट को कई तरीकों से चला और साझा कर सकते हैं
    • Picotron डेस्कटॉप पर चलाना
    • कार्ट्रिज फाइल के रूप में साझा करना
    • standalone HTML और बाइनरी डिस्ट्रीब्यूशन के रूप में एक्सपोर्ट करना
  • स्क्रीन डिफ़ॉल्ट रूप से 480x270 64-रंग है, और 240x135 या 160x90 पर भी चल सकती है
  • फुलस्क्रीन मोड में कस्टम पैलेट का उपयोग किया जा सकता है
  • बिल्ट-इन ग्राफिक्स API डिस्प्ले पर लो-लेवल एक्सेस देता है
    • 8x8 फिल पैटर्न
    • पैलेट रिप्लेसमेंट और ब्लेंडिंग
    • स्टेंसिल बिट्स
    • perspective-correct texture rasterization के लिए tline3d

फाइल, ऑडियो और एक्ज़ीक्यूशन मॉडल

  • फाइलसिस्टम एक वर्चुअल फाइलसिस्टम है जो होस्ट सिस्टम के केवल जरूरी हिस्सों को एक्सपोज़ करता है
  • Picotron की इंटरनल फाइलें POD(Picotron Object Data) फॉर्मेट का उपयोग करती हैं, जिससे Lua टेबल्स को सीधे डिस्क पर सेव और लोड किया जा सकता है
    • सेव डेटा या लेवल डेटा को Lua टेबल में बांधकर store() के जरिए pod में सेव किया जा सकता है
  • ऑडियो PFX6416 नाम के 64-node, 16-channel रियल-टाइम सिंथेसाइज़र से बनता है
    • नोड्स wavetable से सिग्नल बनाते हैं या FM/RING modulation, delay, HP/LP resonant filter, और waveshaping से सिग्नल बदलते हैं
    • यूज़र इंस्ट्रूमेंट डिज़ाइन सहित म्यूज़िक को डिस्क पर 5~20k आकार में सेव किया जा सकता है
  • रनटाइम एनवायरनमेंट में हर प्रोसेस के लिए थोड़ा संशोधित Lua 5.4 VM अलग से इस्तेमाल होता है
    • वर्चुअल CPU प्रोसेसों के बीच बांटा जाता है और अधिकतम प्रति सेकंड 8M VM निर्देश चला सकता है
    • Picotron कार्ट्रिज अलग-अलग प्लेटफ़ॉर्म पर एक समान गति से चल सकते हैं
    • इसे इस तरह डिज़ाइन किया गया है कि अगर यह हाई-परफ़ॉर्मेंस डेस्कटॉप पर बिना समस्या के चलता है, तो पुराने नेटबुक के वेब एनवायरनमेंट में भी लगभग वैसा ही दिखे

कार्ट्रिज-केंद्रित डिप्लॉयमेंट तरीका

  • एप्लिकेशन, प्रोजेक्ट और डिप्लॉयमेंट बंडल सभी को कार्ट्रिज नाम के एक ही प्रकार के रूप में देखा जाता है
    • हर कार्ट्रिज एक सामान्य फ़ोल्डर की तरह काम करता है और प्रोग्राम चलाने के लिए जरूरी सोर्स फाइलें और रिसोर्स शामिल करता है
    • होस्ट सिस्टम पर इसे एक सिंगल टेक्स्ट फाइल .p64 के रूप में सेव किया जाता है, जिसका आकार RAM में फिट होने की सीमा तक हो सकता है
    • शेयर करने योग्य PNG फॉर्मेट .p64.png में अधिकतम 256k ROM डेटा रखा जा सकता है

डेस्कटॉप और बिल्ट-इन टूल्स

  • Picotron डेस्कटॉप टैब्ड वर्कस्पेस और सभी वर्कस्पेस से एक्सेस होने वाली फोल्ड होने वाली टूल ट्रे(tooltray) देता है
  • टूल ट्रे अक्सर इस्तेमाल होने वाली फाइलों और विजेट्स तक पहुंच के लिए दूसरे डेस्कटॉप की तरह काम करती है
  • फाइलों को एक-दूसरे के ऊपर ड्रॉप करके व्यवस्थित स्टैक बनाया जा सकता है, और माउस व्हील से स्टैक पलटा जा सकता है
  • डिफ़ॉल्ट एडिटर्स कोड, ग्राफिक्स, टाइलमैप, म्यूज़िक और साउंड इफेक्ट्स को संभालते हैं
    • ये एडिटर्स खुद भी Picotron में ही बनाए गए हैं
    • अनलिमिटेड undo stack, GUI, और फाइल मैनेजमेंट के लिए /system/lib स्टैंडर्ड लाइब्रेरी का उपयोग होता है
  • उपयोगकर्ता live wallpaper, screensaver, icons और widgets बना सकते हैं और अपने workflow को मनचाहे तरीके से व्यवस्थित कर सकते हैं

पाइपलाइन, प्लेटफ़ॉर्म सपोर्ट और कीमत

  • Picotron एक tightly integrated graphics pipeline और audio pipeline पर बना है
    • graphics और audio pipelines लो-पावर होस्ट मशीनों और वेब पर भी चल सकते हैं
    • यह रंग बदले हुए sprite ड्रॉ करना या sound effect ट्रिगर करना जैसे सामान्य कामों के लिए सरल API देता है
    • बेस डेटा और मशीन स्टेट वर्चुअल RAM में एक्सपोज़ किए जाते हैं
  • वर्तमान स्थिति Beta चरण की है
    • Windows, Mac, Linux और HTML एक्सपोर्ट फीचर पूरे हैं
    • ऑनलाइन हाईस्कोर और फाइल शेयरिंग को सपोर्ट करता है
    • API और वीडियो·ऑडियो पाइपलाइन पहले से सत्यापित हैं
    • आगे की योजनाएं Picotron Roadmap में देखी जा सकती हैं
  • कीमत $19.99 है, और खरीदने वालों को भविष्य के अपडेट्स का एक्सेस मिलता है
  • मौजूदा PICO-8 और Voxatron ग्राहक discounted upgrade का उपयोग कर सकते हैं

1 टिप्पणियां

 
GN⁺ 2024-03-23
Hacker News की राय
  • PICO-8 के साथ बहुत मज़ा आया था और उसका मूल आकर्षण अब भी बरकरार है, लेकिन अब रुझान CX16, Mega65, Agon Light जैसे नई पीढ़ी के “असल” retro hardware की ओर बढ़ गया है
    जब board design, chip, और I/O ports होते हैं, तो specs ज़्यादा ठोस लगते हैं, और Picotron जैसी नई मशीनें I/O specs की सीमाओं के भीतर काफ़ी कम समझौते के साथ चीज़ों को आगे बढ़ा सकती हैं
    Emulation भी संभव है, hardware तक direct access भी मिल सकता है, और BASIC, C, Forth जैसी मनचाही languages भी चलाई जा सकती हैं
    Pico series की तरह असली 8-bit पर Lua को interpreter के रूप में चलाना धीमा हो सकता है, लेकिन इसे cross compiler की नींव की तरह इस्तेमाल किया जाए तो यह एक अलग तरह की coding challenge बन जाती है
    दिशा कुछ ऐसी है: “क्यों न ऐसा ultimate development environment बनाया जाए जो उस project के लिए ज़रूरी बिल्कुल सही code generate करे?” और यही बात बहुत optimized PICO-8 games या C64, Spectrum, A800 के लिए नए demos में भी दिखती है, जहाँ बड़े hardware का इस्तेमाल पुरानी मशीनों के लिए करके दोनों तरफ़ की जड़ धारणाओं को नज़रअंदाज़ किया जाता है

    • अच्छा होगा अगर ऐसी मशीनें हमेशा उसी retro CPU, जैसे Z80, 6502, 8080, या FPGA के VDP clones तक सीमित न रहें
      retro-style 2D/blit-आधारित मशीनें चाहिए, लेकिन hardware थोड़ा ज़्यादा विकसित हो, जैसे Cortex-M, Z8000, 68000, या low-end RISC-V
      boot ROM में BASIC हो, लेकिन 90s की शैली में बढ़ने की ज़्यादा गुंजाइश भी मिले
      समझ सकता हूँ कि लोग Commodore 64 का जादू फिर पाना चाहते हैं, लेकिन व्यक्तिगत रूप से Amiga, Atari, BeBox के hacking वाले दौर ज़्यादा चमकदार लगते हैं
    • बच्चों के साथ Pico-8 में छोटे games बनाकर और basic geometry सीखकर सच में बहुत अच्छा समय बिताया
      Pico-8 से आगे बढ़ी community ने Picotron में भी पहले से cat/wget/grep[1] और स्वाभाविक रूप से Minesweeper[2] बना लिया है
      Joseph White/zep जो भी बनाते हैं, वह शुरुआती internet और IRC के उस दौर को फिर जीवित कर देता है जब हर कोई बिना झिझक बनाता, साझा करता और आनंद लेता था
      zep की वजह से आम लोगों के लिए computing फिर से मज़ेदार बन रही है
      [1]: https://www.lexaloffle.com/bbs/?tid=140771
      [2]: https://www.lexaloffle.com/bbs/?tid=140678
    • पक्का नहीं कि Lua, असली 8-bit पर interpreter के रूप में चलाने पर, BASIC से ज़रूर बहुत धीमी ही होगी
      इसका design बहुत छोटा और orthogonal है
  • करीब 30 मिनट इस्तेमाल किया और अभी भी मुस्कुरा रहा हूँ। यह बस सच में बहुत मज़ेदार है
    पहले Pico-8 काफ़ी इस्तेमाल किया था, इसलिए तुरंत कुछ बनाना आसान लगा, और Pico-8, Aseprite, Blender, Propellerhead ReBirth के साथ मेरे खुशी देने वाले software की टोकरी में आने वाले चार software में से एक है
    Pico-8 में उसके goals और जानबूझकर रखी गई सीमाओं पर बहुत गहरा ध्यान दिया गया था, और अब तक Picotron में भी वही स्तर का लगाव और विचार दिख रहा है
    यह प्यारा है, और इसे बनाते रहना बंद करने का मन नहीं करता
    Pico-8 के कई clones इस्तेमाल किए, लेकिन सभी में लगा कि वे मूल बात चूक गए। वे सीमाओं को “बेहतर” बनाते हैं, लेकिन संतोष नहीं देते
    मज़ेदार बात यह है कि मैंने भी game jam prototyping के लिए “ज़्यादा features वाला Pico-8” जैसा JavaScript version तीन बार बनाने की कोशिश की, लेकिन हर बार clones की तरह वह functional तो था, प्रेरक नहीं, इसलिए छोड़ दिया
    Pico-8 और Picotron कौन बनाता है यह नहीं जानता, लेकिन इतना पसंद आने वाला software बनाने वाले इन शानदार लोगों को सलाम

    • मैं भी Aseprite को उस category में रखूँगा, लेकिन मेरे लिए सबसे बड़ा नाम Godot है
      कई साल OpenGL projects शुरू से बनाकर और Unity को थोड़ा इस्तेमाल करने के बाद, करीब 2020 में Godot पर 100% चला गया, और तब से यह मेरे लिए सबसे ज़्यादा खुशी देने वाला software बन गया है
    • व्यक्तिगत रूप से मुझे TIC-80 कहीं ज़्यादा पसंद है
      बेहतर aspect ratio, दूसरी languages इस्तेमाल करने की सुविधा, और custom Lua standard library पर निर्भर न होना मुझे ज़्यादा अच्छा लगता है
  • “Picotron apps built-in tools से बनाए जा सकते हैं और खास 256KB PNG cartridge format में दूसरे users के साथ share किए जा सकते हैं” — यह देखकर लगता है कि आजकल indie software में assets को PNG files में distribute करने का एक रुझान बन रहा है। ऐसा क्यों है?

    • executable game/program के image के अंदर होने में मज़े वाला पहलू तो है ही, लेकिन PNG एक lossless format है, ZIP जैसी compression algorithm इस्तेमाल करता है, और कई languages में encoding/decoding libraries उपलब्ध हैं
      इसलिए यह application data format के रूप में काफ़ी अच्छा candidate बन जाता है
    • Picotron उसी व्यक्ति ने बनाया है जिसने PICO-8 बनाया था, और जहाँ तक मुझे पता है, PICO-8 ने fantasy console को लोकप्रिय बनाया
    • मज़ेदार है और share करना आसान है
    • ज़्यादातर यह मज़े के लिए है। साथ ही PNG में data store करने के लिए अच्छा alpha channel होता है
      मेरी जानकारी में इस developer के पिछले console PICO-8 ने ही इस रुझान की शुरुआत की थी
  • यह एक मज़ेदार छोटी चीज़ है, लेकिन सावधानी ज़रूरी है। इसमें अभी भी bugs और crashes हैं, और कुछ rough edges भी बचे हैं
    Zep क्या बनाना चाहते हैं, इसका कुछ अंदाज़ा मिलता है, लेकिन बहुत-सी बातें अभी काफ़ी रहस्यमय हैं, और API documentation भी लगभग नहीं के बराबर है
    सचमुच लोग global Lua tables को पूरा print करके यह पता लगाने की कोशिश कर रहे हैं कि कुछ कैसे किया जाए
    0.1a जितना बुरा नहीं है, लेकिन 0.1c के लिए अब भी काफ़ी polishing की ज़रूरत है

  • Pico-8 अब तक इस्तेमाल किए गए software में सबसे सुखद अनुभवों में से एक था, और community Picotron के साथ क्या-क्या बनाएगी, इसे लेकर उत्साह है
    खुद platform, यानी Pico-8 और Picotron, proprietary हैं, लेकिन user programs के source को, भले वे open source न हों, देखा जा सकता है
    शैक्षिक रूप से यह वाकई बहुत अच्छा है और मुझे पसंद है
    compatible implementations ज़रूर आएँगी, लेकिन Pico-8 के tools इतने polished थे और कीमत भी इतनी कम थी कि 10 डॉलर न देने की कोई वजह नहीं थी
    open source implementations शायद programs चलाने भर की सुविधा दें, लेकिन IDE, pixel sprite/map editor, music tracker जैसे प्यारे tools साथ में दें, यह ज़रूरी नहीं
    वह कीमत पूरी तरह वाजिब थी, और Pico-8 उन गिने-चुने paid software में से एक था जिसे खरीदकर कभी बुरा नहीं लगा
    सार यह है कि Pico-8 शानदार है, community और free programs भी शानदार हैं, इसलिए Picotron भी शानदार होगा। मैं बहुत पहले से इसका प्रशंसक हूँ

    • कोई यह लिखे कि Pico-8 बाकी fantasy consoles से इतना बेहतर क्यों है
      खासकर हाल में WASM-4 दिलचस्प लगा, और किसी दूसरे व्यक्ति ने जिस TIC-80 का ज़िक्र किया, वह भी अच्छा दिखता है
      Pyxel के बारे में पढ़कर प्रेरित होने की याद भी है
      इन तीनों का फायदा यह है कि ये मुफ्त हैं, तो फिर Pico-8 के लिए पैसे क्यों दिए जाएँ?
    • Pico-8 शानदार है, लेकिन https://tic80.com/ भी सच में कमाल का है
    • मैं इस बात से सहमत हूँ कि Pico-8 सबसे सुखद software में से एक था, लेकिन एक शिकायत है जिसे नज़रअंदाज़ करना बहुत मुश्किल है। editor font पढ़ने में बहुत कठिन है
      इसकी आदत डालने की कोशिश की, लेकिन नहीं हो पाया
      फिर भी games खेलने में बहुत अच्छे, मज़ेदार, प्रेरक हैं, और community इससे बेहतर शायद हो ही नहीं सकती
  • मुझे जिज्ञासा है कि “CPU: प्रति सेकंड 80 लाख Lua VM instructions” वाला आँकड़ा बस एक अनुमान है, या consistency के लिए लगाया गया limit है
    FAQ में “CPU कितना तेज़ है?” वाले हिस्से में सिर्फ इतना कहा गया है कि यह तेज़ है और PICO-8 से तेज़ है

    • यह सीमित speed है, और सटीक विवरण अभी भी समायोजित किए जा रहे हैं
      वास्तव में screen काफी बड़ी हो गई है, इसलिए PICO-8 की तुलना में अतिरिक्त गुंजाइश उतनी ज़्यादा नहीं है
      अगर आपको ऐसा काम करना है जो PICO-8 के लिए बहुत CPU-heavy हो, तो low-resolution screen mode इस्तेमाल करना होगा
    • PICO-8 भी ऐसा ही करता है, इसलिए लगता है कि यह भी limited speed होगी https://pico-8.fandom.com/wiki/CPU
  • व्यक्तिगत तौर पर इसका एहसास मुझे बहुत अच्छा लग रहा है
    Pico-8 शानदार software है, लेकिन मेरे लिए वह थोड़ा ज़्यादा पुराना और खड़खड़ाता-सा लगता है, जबकि Picotron बचपन वाली अनुभूति के कहीं ज़्यादा करीब लगता है
    जल्दी से इसे लेकर खेलना चाहता हूँ

  • इसे इन Clockwork devices में से किसी एक पर चलाया जाए तो बहुत अच्छा लगेगा: https://www.clockworkpi.com/shop?page=2

    • मैंने उधार लिए हुए Clockwork पर pico-8 चलाकर देखा था, और ज़्यादातर applications में यह ठीक चला
    • uConsole pico-8 support का प्रचार करता है, इसलिए लगता है कि शुरू से ही ऐसा कुछ ध्यान में रखा गया था
  • काश इसमें सस्ते reader के स्लॉट के नीचे सरका देने वाले cardboard पर बने QR code जैसी भौतिकता भी होती
    सही 8-bit एहसास के लिए कुछ हद तक physical feel से बचा नहीं जा सकता। low-resolution screen और ज़ोर से दबाने लायक बड़े buttons भी होने चाहिए

  • थोड़ा अफसोस है कि यह PICO-8 के साथ पूरी तरह compatible नहीं लगता
    मैंने कल्पना की थी कि यह PICO-8 games बनाने के लिए एकदम perfect environment होगा

    • जानना चाहूँगा कि किन मामलों में। अभी के चरण में शायद इसे बदला जा सकता है