1 poin oleh GN⁺ 2024-06-28 | 1 komentar | Bagikan ke WhatsApp
  • Forth Deck mini adalah versi ber-casing yang menambahkan keyboard, layar, dan baterai ke papan My4TH, membangun lingkungan pengembangan Forth mandiri berukuran kecil di dalam perangkat
  • Intinya adalah CPU logika CMOS diskrit 8-bit, dengan clock 8~14MHz serta 32KB ROM, 32KB RAM, dan hingga 256KB EEPROM
  • Input dan output ditangani oleh LCD karakter 40×4 dan keyboard QWERTY 56 tombol, dengan baterai LiPo 6.6Wh yang dapat menjalankan perangkat selama 6 jam tanpa pengisian ulang
  • Ekspansi menggunakan papan RS-232 4800 baud dan bus I2C, sementara PCB keyboard dirancang untuk menghemat pin I/O yang terbatas demi penggerak LCD dan matriks tombol
  • Kit keyboard Budgetronics saja tidak cukup untuk menyelesaikannya; untuk membuat Forth Deck diperlukan My4TH computer board terpisah dan konfigurasi komponen opsional

Konfigurasi yang mengubah papan My4TH menjadi perangkat Forth portabel

  • Forth Deck mini adalah versi My4TH computer board yang ditambahkan keyboard dan layar lalu dimasukkan ke dalam casing
  • Berkat baterai isi ulang bawaan, perangkat ini dapat digunakan tanpa colokan listrik
  • Program Forth dapat ditulis dan di-debug langsung di perangkat, sehingga tidak memerlukan terminal serial atau PC
  • Cara penggunaannya mirip dengan interpreter Basic bawaan pada komputer rumahan era 1970~80-an

Spesifikasi perangkat keras

  • Layar dan input

    • LCD karakter 40×4
    • Keyboard QWERTY 56 tombol
  • Daya dan ukuran

    • Baterai LiPo 6.6Wh
    • Beroperasi 6 jam tanpa pengisian ulang
    • Ukuran 198×118×35mm
  • CPU dan memori

    • CPU logika CMOS diskrit 8-bit
    • Frekuensi clock 8~14MHz
    • 32KB ROM, 32KB RAM, hingga 256KB EEPROM
    • 17 chip logika CMOS seri 74 dan 3 transistor
  • I/O dan sistem

    • RS-232, 4800 baud
    • Bus I2C untuk ekspansi
    • Sistem Forth 2012 16-bit

PCB keyboard dan kit perakitan

  • Keyboard dan layar terhubung ke My4TH board melalui kabel pita
  • PCB keyboard memuat LCD, 56 push button, konektor USB type B mini, soket Qwiic, 74HC574, dan lainnya
  • Rangkaian pengisian baterai adalah opsional
  • Daftar komponen lengkap dapat dilihat di Forth Deck construction manual
  • Materi yang diperlukan untuk perakitan dapat diunduh dari download
  • Kit keyboard Forth Deck dapat dibeli dari Budgetronics
    • Untuk mengurangi biaya, baterai dan rangkaian pengisian tidak disertakan
    • Beberapa konektor opsional juga tidak disertakan
    • Paket spacer tetap disertakan agar dua papan bisa ditumpuk untuk membuat versi desktop tanpa casing
  • Untuk menyelesaikan Forth Deck, My4TH computer board diperlukan secara terpisah

Cara menggerakkan LCD dengan pin I/O yang terbatas

  • LCD beroperasi dalam mode 4-bit untuk menghemat pin pada konektor I/O My4TH
  • Pada konektor I/O My4TH hanya ada 5 output digital yang tidak terpakai, sementara LCD besar memiliki 2 input chip select sehingga jumlah output yang dibutuhkan kurang 2
  • Kekurangan output digital dilengkapi dengan 74HC574 octal D-type bus latch
    • IC ini dirangkai seperti shift register dengan lebar 4-bit dan kedalaman 2
    • Hasilnya, tersedia tambahan 8 output digital
  • Saat data dimasukkan ke 74HC574 dengan clock, digunakan jalur SCL pada bus I2C
    • Meskipun 74HC574 di-clock dengan sinyal SCL, perangkat pada bus tidak melihat start condition I2C yang valid
  • Agar tidak terjadi penulisan register yang tidak diinginkan ke LCD, layar menggunakan sinyal select OUT3 dari port I/O digital My4TH
  • Gerbang AND resistor-dioda pada R3/D6 dan R4/D8 mem-mask chip select LCD
  • C2 dan C3 memfilter glitch yang timbul dari toggle pin 74HC574 serta kapasitansi parasit pada D6 dan D8

Keyboard 56 tombol dan reset perangkat keras

  • Keyboard terdiri dari total 56 tombol
  • Jarak antartombol 12mm, sehingga sulit menggunakan tombol yang lebih besar dan nyaman
  • Perangkat diupayakan sekecil mungkin, tetapi karena layar, lebar minimumnya menjadi 190mm
  • Pada jarak 12mm, 14 tombol muat dalam satu baris, dan dengan 4 baris totalnya menjadi 56 tombol
  • Input tombol dibaca dengan menggunakan semua 6 pin input yang tidak terpakai pada konektor port I/O My4TH
    • Dikombinasikan dengan 9 output digital untuk membaca matriks tombol 6×9=54
    • Sisa 2 tombol adalah tombol khusus, yaitu shift dan reset
  • Reset perangkat keras dijalankan dengan menekan tombol Reset sambil menahan tombol shift

Rangkaian baterai, perangkat lunak, dan pemisahan PCB

  • Baterai LiPo digunakan sebagai catu daya sistem
  • Rangkaian pengisian berbasis chip TP5400 yang banyak digunakan pada power bank USB murah
  • Jika penyolderan komponen SMD kecil sulit, modul TP5400 rakitan dapat digunakan dan dihubungkan ke PCB keyboard dengan fly wire
  • Perangkat lunak pendukung PCB keyboard telah terintegrasi mulai My4TH ROM 1.0
    • Saat papan ekspansi keyboard dihubungkan ke papan komputer My4TH, My4TH otomatis mendeteksi keyboard dan LCD
  • PCB disiapkan agar dapat dipotong menjadi dua untuk memisahkan keyboard dan layar
    • Layar dapat dipasang pada sudut yang berbeda dari keyboard
    • Keyboard buatan sendiri yang lebih nyaman dapat digunakan

Contoh dan lisensi

1 komentar

 
GN⁺ 2024-06-28
Pendapat di Hacker News
  • CPU komputer ini menggunakan pendekatan microcode, dan dibuat dari sejumlah kecil chip logika diskret serta EEPROM.
    Bus data/alamatnya 8-bit, tetapi unit NOR hanya memproses 1 bit, jadi untuk melakukan penjumlahan 8-bit, microcode harus berputar dalam loop.
    Saya melihat skematiknya karena mengira perlu ada hardware shifter untuk mengakses bit D1~D7, tetapi ternyata tidak ada; shift ditangani lewat lookup table di EEPROM.
    Kalau tertarik dengan desain CPU yang keren, Novix NC4000 atau RTX2000 juga layak dilihat. Bit-bit instruksinya hampir langsung mengendalikan berbagai multiplexer dan unit di dalam chip, sehingga decoding-nya nyaris tidak ada.

  • Saat remaja saya tergila-gila pada Forth dan CPU berbasis komponen diskret, dan kalau dicari dengan teliti, mungkin masih bisa ditemukan webring lama berisi CPU rakitan sendiri yang dibuat dari komponen diskret.
    Obsesi itu berujung pada pekerjaan saya sekarang sebagai perancang hardware digital, jadi saya sangat senang kalau tulisan seperti ini naik ke halaman teratas HN.

  • Saya suka membaca kisah tentang CPU berbasis komponen diskret yang dioptimalkan seperti ini.
    IC logikanya hanya 16 buah, bahkan tidak ada adder. Fungsi ALU-nya hanya satu gerbang NOR 1-bit.
    Detailnya ada di sini: http://mynor.org/my4th.htm

  • Saya penasaran apa yang menjadi penghalang untuk membuat semacam TRS-80 Model 100 versi hobi pada masa kini.
    LCD 40x8, salah satu keyboard terbaik sepanjang masa, dan komunitas keyboard kustom tampaknya bisa membuat hampir keyboard apa pun yang diinginkan.
    Pada Model 100, keyboard memang memakan sebagian besar ruang, tetapi sekaligus benar-benar layak dipakai. Yang penting, layar 40x8-nya cukup besar dan mudah dibaca, sedangkan deck dengan layar kecil 640x480 sulit dibaca, terutama untuk mata yang sudah menua.
    Psion 5 punya keyboard yang juga cukup layak dan layarnya lebih baik daripada M100, tetapi saya tidak tahu apakah keyboard seperti itu bisa dibuat oleh penghobi. Bisa saja dibongkar dan dipakai ulang, tetapi bagi sebagian orang itu mungkin terasa seperti penistaan.
    “Deck” yang belakangan terlihat dengan matriks tombol sulit disebut keyboard sungguhan, dan menurut saya PET 2001 sudah menunjukkan hal itu. Dulu saya banyak coding dengan PET.
    Padahal tidak harus menjadi produk yang layak pasar, jadi saya penasaran kenapa belum muncul barang yang terasa “sungguhan” dan “bagus”. Kalau dibilang karena uang, melihat berapa banyak orang menghabiskan uang untuk hobi, rasanya itu bukan keseluruhan alasannya.

    • Mendapatkan display besar beresolusi rendah itu menyakitkan.
      Kerapatan piksel sudah naik banyak, sehingga layar besar biasanya beresolusi tinggi, dan itu membutuhkan perangkat yang jauh lebih cepat untuk menggerakkannya. Pada titik itu, controller display menjadi jauh lebih kuat daripada komputer sebenarnya, sehingga rasanya agak konyol.
      Itulah hambatan yang saya temui. Sangat mungkin dilakukan, tetapi hasilnya jadi lebih canggung daripada yang dimaksudkan.
    • Tidak ada yang menghalangi pembuatan TRS-80 Model 100 versi hobi sekarang: https://www.clockworkpi.com/home-devterm
    • Saya malah bertanya-tanya kenapa harus begitu. Dulu keyboard bukan periferal, tetapi sekarang keyboard adalah periferal.
      Tidak ada alasan untuk membatasi pilihan; beli saja keyboard yang diinginkan dan gunakan. Tidak ada yang menghalangi orang memakai keyboard yang mereka mau, dan menurut saya itulah bentuk kemajuan.
  • Saya pernah membuat 5 papan My4th Light. Kalau tertarik, hubungi lewat profil saya.
    Kalau ada peminat, saya juga berpikir untuk membuat satu batch Forth Deck mini.
    Saya berencana membuat video demo Forth singkat, tetapi belum sempat mengerjakannya.

  • Singkatnya, arahnya terlihat mirip AlphaSmart untuk pemrograman
    Kalau belum tahu AlphaSmart, itu perangkat seperti mesin tik dengan LCD kecil. Bisa berjalan berjam-jam dengan baterai, ruang simpannya terbatas, dan bisa disambungkan ke komputer besar untuk menyimpan draf
    Di mana versi untuk pemrogramannya? Saya terpikir begitu setelah baru-baru ini melihat tulisan di HN tentang menjalankan Mac 128k di RPI2040. Secara teori, pekerjaan sungguhan memang mungkin dilakukan di sistem seperti itu, tetapi sebagai hiburan mungkin tidak terlalu menarik
    AlphaSmart untuk komputasi berdaya rendah membutuhkan keyboard sungguhan, layar berdaya rendah, kalau bisa layar e-ink yang lebih besar, dan tanpa koneksi internet
    Yang saya maksud bukan kalkulator seperti TI-83, TI-92, atau NumWorks yang lebih baru. Perangkat seperti itu dibuat untuk kalkulator dan tidak nyaman karena form factor-nya seperti kalkulator
    https://en.wikipedia.org/wiki/AlphaSmart
    https://news.ycombinator.com/item?id=40699684
    https://axio.ms/projects/2024/06/16/MicroMac.html
    https://en.wikipedia.org/wiki/TI-83_series
    https://en.wikipedia.org/wiki/TI-92_series
    https://www.numworks.com/

    • Saya juga sudah menginginkan hal seperti itu selama bertahun-tahun, dan berkat Memory LCD dari Sharp serta mikrokontroler ARM dengan logika subthreshold dari Ambiq, kini memungkinkan membuatnya berjalan di bawah 1 miliwatt
      Dengan begitu perangkat bisa berjalan hanya dengan tenaga surya tanpa baterai, dan untuk penyimpanan massal bisa memakai flash NAND paralel dengan tingkat penggunaan rendah
      Saya tidak berhasil melampaui tahap prototipe awal, dan catatan desain zorzpad sebagian besar dalam bahasa Spanyol di http://canonical.org/~kragen/sw/zorzpad.git/. za3k vance sedang membuat zorchpad yang terinspirasi dari itu: https://blog.za3k.com/tag/zorchpad/
      Tujuan utama zorzpad adalah penggunaan jangka panjang dengan umur 53 tahun. Demi tujuan ini, saya berpendapat tidak boleh memakai baterai, port pengisian daya, atau key switch siap pakai. Karena itu ada banyak kompromi dalam desain sistem, dan saya belum menemukan prosesor yang memiliki MMU sekaligus bisa berjalan di bawah 1 miliwatt
      “zorzpad” adalah permainan kata dari “thinkpad”, dan dalam sebagian dialek Spanyol dilafalkan seperti “thorthpad”, jadi ini semacam lelucon sebagai kebalikan dari thinkpad
      Saya rasa layar e-ink sangat mungkin memakai daya terlalu besar. Selama beberapa tahun saya mencari angka konsumsi daya yang pasti, dan jika membagi daya tahan baterai Amazon Kindle dengan kapasitas baterainya, perkiraannya sekitar 100 miliwatt
      Layar alternatif e-ink pada zorzpad ukurannya kira-kira sepersepuluh dan dayanya seperseribu, yaitu sekitar 100 mikrowatt; datasheet hanya menjamin 20Hz, tetapi refresh 60Hz juga memungkinkan
      Jika tidak peduli soal menghilangkan baterai atau tidak mempertimbangkan produksi massal, secara harfiah Anda bisa membeli AlphaSmart Neo lalu menghubungkan keyboard dan layarnya ke sesuatu seperti ESP32
    • Menurut saya yang paling mendekati permintaan itu adalah Cardputer: https://docs.m5stack.com/en/core/Cardputer
    • TRS-80 Model 100 benar-benar sangat cocok dengan kriteria itu
      Ada BASIC, pengolah kata, dan spreadsheet di ROM, serta layar yang bisa dialamati per piksel dan keyboard yang sangat bagus dibandingkan ukurannya. Ada juga RS-232 dan modem 300bps
      Clockwork-PI belakangan ini mengingatkan pada nuansa tersebut, tetapi keyboard-nya terasa seperti mainan, dan pada akhirnya itu hanya laptop Linux dengan segala macam distraksi
      Model 100 bahkan masih dipakai para jurnalis hingga tahun 90-an untuk dibawa-bawa, menulis artikel, lalu mengunggahnya ke bureau layanan
    • AlphaSmart e-ink saja rasanya sudah luar biasa
      Bagi saya, fitur kuncinya adalah keyboard dan shortcut Mac, sehingga saya tidak perlu berpikir sama sekali saat menggunakannya
    • Saya memakai Alphasmart Neo untuk menulis jurnal. Baru-baru ini saya memodifikasinya dengan memasang ESP32 agar bisa transfer file nirkabel, dan saya sangat puas
      https://www.dannysalzman.com/2024/06/20/modding-alphasmart-n...
  • Sebagai preseden komputer yang memiliki interpreter Forth bawaan, ada Jupiter Ace: https://en.wikipedia.org/wiki/Jupiter_Ace
    Selain itu, Open Firmware yang dipakai di Sun, PowerPC Mac, One Laptop per Child, dan lainnya juga memanfaatkan Forth. Forth juga dipakai pada ROM kartu ekspansi, sehingga bisa dibuat kurang bergantung pada CPU: https://en.wikipedia.org/wiki/Open_Firmware

  • Jika tertarik pada komputer kecil tetapi tidak terlalu tertarik pada Forth atau menyolder, dengan 30 dolar Anda bisa membeli ESP32 box yang cukup layak: https://shop.m5stack.com/products/m5stack-cardputer-kit-w-m5...

    • Penasaran seperti apa sistem operasinya. Sepertinya tidak akan boot ke desktop Wayland
      Meski begitu, perangkat ini jauh lebih bertenaga daripada Amiga yang saya emulasikan akhir pekan lalu, dan Amiga punya desktop GUI lengkap, compiler, serta berbagai tool
      Saya penasaran apa yang bisa dilakukan dalam kondisi bawaan
      Edit: karena tidak terlalu penting, saya langsung memesannya. Nanti kalau sudah sampai akan tahu, tetapi sampai saat itu saya masih penasaran sebaiknya berharap apa
    • Meski begitu, ada Forth untuk perangkat ini: https://github.com/ryu10/M5CardForth
    • Produk M5Stack semuanya terlihat cukup bagus untuk harganya. Kalau dengan 30 dolar fungsinya mendekati Flipper Zero, itu menarik
    • Papan ESP32S3 dengan GPS, radio LoRa, charger LiPo, dan layar OLED juga bisa didapat sekitar 28 dolar
      Ini perangkat yang umum dipakai di Meshtastic
  • Hmm… ada juga Forth dari Collapse OS: http://collapseos.org/forth.html

  • Teringat Oric-1
    https://en.m.wikipedia.org/w/index.php?title=Oric_(computer)...