Ekosistem Uxn
(100r.co)- Uxn/Varvara adalah stack komputasi personal yang berpusat pada mesin virtual kecil untuk menjalankan aplikasi yang sama di berbagai sistem
- Berawal dari kebutuhan spesifik untuk hosting aplikasi grafis, tetapi tersedia secara terbuka agar siapa pun dapat mengadopsinya sebagai target rilis
- Program ditulis dalam bahasa miliknya sendiri, Uxntal, dan cara distribusinya mirip berbagi ROM game untuk emulator konsol klasik
- Untuk menjalankannya dibutuhkan emulator sesuai sistem operasi, dan Anda juga dapat mengimplementasikan emulator sendiri berdasarkan spesifikasi VM dan I/O
- Karena ROM yang sama dapat dijalankan di desktop, perangkat elektronik kecil, handheld, dan browser, software kecil lebih mudah dipertahankan dalam jangka panjang dan dipindahkan ke berbagai lingkungan
Stack komputasi yang dituju Uxn/Varvara
- Ekosistem Uxn/Varvara adalah stack komputasi personal yang berpusat pada mesin virtual kecil
- Tujuan utamanya adalah memungkinkan aplikasi yang sama berjalan di berbagai sistem
- Desainnya didasarkan pada pola pikir implementation-first, dan disesuaikan dengan kebutuhan spesifik untuk hosting aplikasi grafis
- Uxn diprogram dengan bahasa miliknya sendiri, Uxntal
- Distribusi program Uxn mirip dengan cara berbagi ROM game untuk emulator konsol klasik
- Latar belakang desain yang lebih rinci dapat dilihat di catatan uxn design
Emulator dan menjalankan ROM
- Untuk menjalankan program Uxn, diperlukan emulator yang sesuai dengan sistem
- Linux/BSD
- Mac/Plan9
- Windows
- Lingkungan yang lebih beragam dirangkum di daftar emulator awesome-uxn
- Anda juga dapat mengimplementasikan emulator sendiri dengan melihat spesifikasi VM dan I/O
- Emulator lintas platform untuk desktop memerlukan SDL2
- Arch:
sudo pacman -S sdl2 - Ubuntu:
sudo apt install libsdl2-dev - Void Linux:
sudo xbps-install SDL2-devel - OSX:
brew install sdl2 - openBSD:
doas pkg_add sdl2
- Arch:
- Ada beberapa cara menjalankan ROM
- Menggunakan program launcher
- Menyeret file
.romke jendela emulator - Menjalankan
bin/uxnemu path/to/example.romdari terminal
- Pengoperasian dasar emulator dilakukan melalui tombol fungsi dan pemetaan tombol
F1: toggle zoomF2: toggle debuggerF3: screenshotF4: memuatlauncher.romL-Ctrl: A,L-Alt: B,L-Shift: Select,Home: Start
Lingkungan yang dapat menjalankannya dan contoh program
- ROM Uxn yang sama dapat digunakan di komputer desktop, perangkat elektronik kecil, handheld modern, dan browser
- Ada juga port untuk GBA, Nintendo DS, Playdate, DOS, PlayStation Vita, Raspberry Pi Pico, Teletype, ESP32, Amiga, iOS, STM32, IBM PC, dan lainnya; sebagian belum selesai
- Contoh program Uxn yang disediakan mencakup mainan, game, dan alat
Materi belajar dan komunitas
- Materi awal tersedia melalui tautan berikut
- Jika membutuhkan bantuan, Anda dapat bertanya di #uxn pada
irc.libera.chatatau di Catlang Discord
1 komentar
Komentar Hacker News
Semua aspek dari kelompok ini menarik. Mereka adalah nomaden digital di atas kapal, dan tiap tulisan memberi kesempatan mengintip kehidupan yang bahkan tak pernah terpikir mungkin dijalani
Setiap kali masuk ke situsnya, rasanya seperti jatuh ke lubang kelinci. Dalam kehidupan yang lain, mungkin aku juga ingin mencobanya
https://100r.co/site/dry_toilet_installation.html
https://100r.co/site/solar_evacuated_tube_cooking.html
Cross-compilation juga mudah, dan membaca pengantar Plan 9 dari Ballesteros secara alami membantu membangun intuisi ilmu komputer
Isinya benar-benar keren
Fakta bahwa itu berjalan di berbagai perangkat keras nyata juga mengejutkan. Aku sudah melihat banyak proyek mesin virtual, tetapi kebanyakan terasa terisolasi di dalam komputer lain. Sepertinya keterbatasan ekstrem mendorong desain ke arah yang sama sekali berbeda
Tentu saja algoritma YouTube tetap algoritma YouTube dan kapitalisme tetap kapitalisme, jadi cukup banyak video pelayaran yang pada akhirnya jadi konten bikini. Tapi di saat yang sama, hidup memperbaiki, memodifikasi, dan meningkatkan yacht kecil juga menjadi bagian besar darinya. Dari pekerjaan fiberglass sampai tenaga surya dan desalinasi, itu benar-benar memberi gambaran kehidupan yang sangat menarik
Aku sangat menghormati tim ini. Ada juga tulisan bagus tentang pencarian menuju model komputasi yang lebih sederhana yang layak dibaca: https://100r.co/site/weathering_software_winter.html
100r mengingatkanku pada hal yang paling banyak kita hilangkan akhir-akhir ini, yaitu keberanian
Kita takut menangkap peluang, mengeksplorasi ide, memilih jalan yang sedikit lebih sulit, dan terjun ke tantangan yang merepotkan. Kita terlalu menghindari risiko dan enggan mencoba hal baru
Membaca tentang perjalanan mereka, semua pekerjaan yang dilakukan di kapal, sikap mereka terhadap kode, terutama gagasan membuat perangkat lunak untuk satu orang, membuatku merasa pengecut. Itu membuatku ingin lebih berani dalam cara memperlakukan kode, hidup, dan lingkungan sekitarku
Terima kasih untuk semua karya Rek dan Devine. Menyenangkan melihat orang-orang sibuk tidak melakukan apa-apa
Akun penulis di Mastodon (https://merveilles.town/@neauoire) adalah harta karun berisi proyek kecil dan tangkapan layar dari semesta komputasi paralel bernama komputer Devine
Juga sangat merekomendasikan episode podcast mereka di Future of Coding: https://futureofcoding.org/episodes/044.html dan ada juga lanjutan yang membahas Orca, lingkungan musik live yang luar biasa: https://futureofcoding.org/episodes/045.html
Berkat orang ini dan para pengguna Lisp lama di forum ini, aku sudah lama memikirkan komputasi alternatif dan bahasa pemrograman niche. Uxn ada di daftar hal yang ingin kupelajari, dan belakangan ini aku sedang sibuk dengan keluarga Smalltalk sebelum masuk ke Forth dan Uxn :)
Aku selalu senang ketika mereka muncul di halaman depan. Perangkat lunak yang mereka tulis memang menarik, tetapi pekerjaan yang mereka lakukan untuk membuat kapal mereka semaksimal mungkin mandiri benar-benar luar biasa
Ada penggemar Blame! di sini? https://wiki.xxiivv.com/site/devine_lu_linvega.html https://blame.fandom.com/wiki/Davine_Lu_Linvega
https://100r.co/site/pino.html
Dari semua situs mereka, yang benar-benar sering kucek justru situs resepnya: https://grimgrains.com/site/home.html
Ada cukup banyak hal menarik di sana untuk orang yang suka memasak
Maxine Chevalier-Boisvert, yang dikenal lewat pekerjaan Basic Block Versioning JIT dan yjit yang lebih baru, juga baru-baru ini membahas gagasan serupa
https://pointersgonewild.com/2023/02/24/building-a-minimalistic-virtual-machine/
Ini adalah desain mesin virtual yang kecil dan elegan, jadi kemungkinan besar banyak orang di sini akan menganggapnya menarik
Ini bukan cuma desain di halaman web seseorang; mereka benar-benar membuat alat, game, dan karya seni
Aku pernah melakukannya, dan memang sedikit lebih kompleks daripada set instruksi mereka, tetapi tidak terlalu jauh. Karena bisa menjadi target compiler sungguhan, pada dasarnya kamu bisa menjalankan perangkat lunak apa pun. Hanya saja, kamu tetap perlu menyediakan sisa lingkungan mesin virtual untuk hal-hal seperti I/O
Game bergaya retro berbasis Forth, spesifikasi rendah, dan mesin virtual yang sudah di-porting ke hampir mana pun, jadi mirip dengan Z-Machine tetapi lebih cocok untuk piksel
Terlihat pas untuk game bergaya GB tanpa harus berurusan dengan instruksi mirip Z80 atau khawatir bug timing siklus aneh saat menampilkan sprite bisa sampai membakar LCD sungguhan