Speaker PC Ke Sebelas

Dikenal sekarang sebagai "speaker motherboard", atau hanya "bip", Speaker PC telah diperkenalkan pada tahun 1981 bersama dengan komputer IBM pribadi pertama. Menjadi penerus dari komputer besar yang serius untuk bisnis yang serius, telah dirancang untuk menghasilkan beep sistem yang sangat mendasar, sehingga tidak pernah benar-benar memiliki kesempatan untuk bersinar terang sebagai perangkat musik di berbagai program hiburan di pasar rumah yang sedang berkembang. Dibayangi oleh chip suara yang jauh lebih maju dari sistem permainan rumah populer, dengan cepat diganti dengan kartu suara yang kuat, sebagian besar berfungsi sebagai opsi mundur, memainkan konten yang sangat diturunkan dari perangkat keras suara yang lebih baik.

"System Beeps" adalah album musik dalam bentuk program MS-DOS yang menampilkan musik asli yang dibuat untuk Speaker PC menggunakan teknik-teknik lama dasar yang sama seperti yang ditemukan di gim-gim PC klasik. Ini mengikuti formula demoscene komputasi retro yang biasa - mengambil sesuatu yang berkarat dan usang, dan mendorongnya ke sebelas - dan mencoba untuk mengungkapkan potensi lama tersembunyi dari perangkat suara kecil yang sederhana ini. Anda dapat mendengarnya beraksi dan membentuk pendapat tentang seberapa sukses upaya ini di Bandcamp , atau dalam video di bawah ini. Artikel berikut adalah tinjauan mendalam tentang kemampuan Speaker PC asli dan pembuatan proyek, bagi mereka yang ingin tahu lebih banyak.


Internal Speaker PC


PC Speaker adalah pengeras suara kecil yang digerakkan oleh magnet, atau, dalam waktu yang lebih baru, sebuah bel piezoelektrik, digerakkan langsung oleh saluran 8253 Programmable Interval Timer yang membagi frekuensi clock yang masuk 1,19 MHz dengan nilai 16-bit yang diprogram. Untuk menghasilkan suara, timer diatur ke mode generator gelombang persegi. Ini adalah peningkatan kecil tapi praktis dibandingkan dengan komputer rumahan kontemporer seperti Apple II dan ZX Spectrum , di mana speaker telah terhubung langsung ke jalur I / O dan suara yang dimaksudkan untuk diproduksi semua oleh CPU. Penggunaan PIT memungkinkan CPU untuk hanya mengatur frekuensi, dan terus menangani tugas-tugas lain saat timer menghasilkan suara. Namun, CPU dapat menghasilkan suara polifonik multi timbral yang jauh lebih menarik, sementara PC Speaker itu sendiri, tanpa bantuan utama dari CPU, tidak mampu terdengar keras atau tenang, lembut atau tajam - hanya terbatas pada gelombang persegi sederhana tanpa kontrol volume.

Untuk memutar efek suara atau musik, CPU memperbarui status timer, yaitu suara on / off dan pitchnya, dalam periode waktu yang tersebar secara merata. Biasanya ini dilakukan dalam interrupt handler dari Timer Channel 0 (IRQ0) yang digerakkan oleh chip PIT yang sama. Tingkat interupsi default adalah 18,2 Hz, tetapi game sering meningkatkan tingkat ini hingga 30 ... 200 Hz, tergantung pada game. Ini membantu untuk sedikit meningkatkan kompleksitas suara.

Speaker PC dapat secara efektif memainkan nada dalam kisaran 100 ... 2000 Hz. Itu bisa lebih rendah atau lebih tinggi, tetapi ini membawa beberapa masalah. Pengeras suara dan piezo kecil tidak dapat mereproduksi frekuensi lain dengan cukup baik. Di atas 2000 Hz juga mulai menyimpang dari frekuensi not musik karena resolusi timer. Di bawah 100 Hz frekuensi suara dapat menjadi lebih rendah dari periode pembaruan, yang menyebabkan hilangnya beberapa pembaruan suara, karena timer hanya memperbarui pembagi frekuensi setelah penghitungan saat ini dengan pembagi sebelumnya dilakukan.

Polifoni monofonik


Speaker PC adalah perangkat monofonik - hanya memiliki satu saluran suara atau "suara", yaitu, hanya mampu memutar satu frekuensi suara pada satu waktu. Ini sangat terbatas untuk keperluan musik, sehingga pengembang game dan komposer musik mencari tahu beberapa cara untuk mencapai polifoni benar atau palsu. Tiga pendekatan umum telah dikembangkan dan digunakan dari waktu ke waktu.

Pendekatan pertama menganggap bahwa Speaker PC memainkan gelombang persegi seperti biasanya, kode pemain memperbarui nada dalam timer yang mengganggu pada tingkat yang ditetapkan, membuat hampir tidak ada beban ke CPU. Tetapi ada 2-3 saluran virtual suara dengan bagian-bagian yang berbeda diputar, dengan hanya satu dari mereka yang output ke speaker yang sebenarnya pada saat tertentu, dan mereka bergantian dengan setiap pembaruan. Misalnya, ada dua saluran. Dalam satu pembaruan, yang pertama diarahkan ke speaker (pembagi frekuensi dan status hidup / mati speaker dikirim ke register suara), di pembaruan lain yang kedua diarahkan ke speaker sebagai gantinya. Begitulah cara beberapa jenis polifoni dicapai dalam Lotus III dan Xenon 2 . Kasus yang cukup umum di sini adalah bahwa satu saluran memainkan bagian bass sementara yang lain memainkan melodi, dan bagian-bagian ini jauh terpisah oleh frekuensi, membuat nada pitch besar melompat, atau satu saluran memainkan nada sementara yang lain dibisukan - dalam kedua kasus itu mengarah ke buzz konstan yang tidak menyenangkan. Hal ini dapat dikurangi dengan menghilangkan not yang dibisukan dalam musik sama sekali, seperti yang dilakukan oleh Golden Axe , yang sangat membatasi ekspresi musikal (jeda sama pentingnya dengan not dalam musik). Cara lain adalah menghindari saluran secara bergantian sedapat mungkin, seperti ketika hanya satu saluran yang memainkan catatan. Ini membantu membuat bagian-bagian ini terdengar lebih bersih, seperti yang terdengar di Stunts .

Pendekatan kedua terlihat di banyak game Lucas Art . Perusahaan sering berupaya keras untuk membuat versi Speaker dari musik mereka terdengar lebih baik. Ini biasanya memainkan sebagian besar melodi monofonik yang memiliki bagian melodi, bass, dan ritmik yang terpisah dalam waktu. Saluran kedua memainkan catatan staccato yang sangat pendek, seperti arpeggio atau drum, yang diprioritaskan, mematikan sebentar saluran utama. Contohnya dapat ditemukan di Monkey Island , Loom , Indiana Jones . Salah satu kegunaan paling maju dari teknik ini terdengar di Zak McKracken dan Alien Mindbenders . Ini membuat ilusi polifonik jauh lebih realistis dan menyenangkan, meskipun kemampuannya sangat terbatas.

Dengan pendekatan ketiga terakhir, perangkat keras PC Speaker tidak digunakan untuk menghasilkan suara sendiri, melainkan digunakan sebagai DAC mentah yang hanya mengeluarkan suara yang dihasilkan oleh CPU semua dalam perangkat lunak. Ini membutuhkan banyak waktu CPU, hampir memaksimalkan beban 8086, sehingga hanya mendapatkan popularitas dengan kedatangan 80386. Kualitas suara dari metode ini agak buruk dan secara objektif lebih rendah daripada replika Covox sederhana yang dibuat dari beberapa resistor. Namun demikian, itu adalah pencapaian yang benar-benar mengesankan untuk saat itu, sehingga salah satu implementasinya, RealSound , telah dipatenkan dan disublisensikan .

Speaker PC dapat dihidupkan dalam DAC dengan menonaktifkan penghitung waktu kemudian mengaktifkan / menonaktifkan output suara, yang membuatnya menjadi DAC 1-bit yang sangat mendasar, atau dengan menggunakan saluran suara PIT untuk menghasilkan pulsa pendek lebar variabel (PWM) di Frekuensi pembawa ditetapkan oleh penghentian waktu, yang secara efektif memberikan DAC 6-bit yang jauh lebih baik. Yang pertama dapat didengar di Fantasy World Dizzy dan Hard Drivin ' , yang terakhir paling sering digunakan untuk memainkan musik berbasis sampel yang didigitalkan, seperti di Pinball Mimpi Ini juga telah digunakan dalam alat-alat yang sangat menarik di masa lalu seperti TEMU dan VSB - emulator perangkat lunak dari 3-channel Tandy sound chip dan bagian digital dari Sound Blaster , yang memungkinkan untuk memiliki suara melalui PC Speaker dalam program yang mendukung perangkat tanpa nama memiliki perangkat itu sendiri (diperlukan 386SX atau lebih baik).

Album dan Bagaimana Itu Dibuat


Awalnya saya tidak punya niat untuk membuat album musik. Saya sedang merancang proyek game yang akan ditata sebagai game grafis semu era XT. Untuk melengkapi visi saya datang dengan ide untuk membuat tidak hanya gaya, tetapi musik PC Speaker aktual yang juga akan mengikuti formula game era 8-bit yang umum - trek melingkar sekitar satu menit panjang. Saya tidak ingin menggunakan sampel digital atau sintesis perangkat lunak, karena tidak cocok untuk estetika yang dianggap, dan tidak akan memiliki karakter yang unik. Saya merasakan daya tarik khusus dalam musik monofonik sejak saya mendengarnya pertama kali di ZX Spectrum dalam permainan seperti Ping Pong , Stardust , Score 3020 . Memiliki kesempatan seperti itu, saya sangat ingin mencoba membuat musik monofonik yang sebenarnya, dan berusaha untuk memeras beberapa hasil yang sebelumnya tidak pernah terdengar melalui cara pengaturan - tantangan yang menarik bagi saya sebagai komposer musik.

Pekerjaan pada musik membuat saya terbawa, dan lebih tertarik daripada proyek game itu sendiri. Setelah bersenang-senang , saya mengembangkan dan menerbitkan PCSPE , plugin VSTi , membuat banyak sketsa musik, dan beberapa versi sampul dari karya-karya lama saya, untuk mengembangkan teknik penulisan yang cocok untuk pengaturan monofonik, dan untuk membentuk desain suara umum. Akhirnya saya memutuskan bahwa hasilnya tidak sesuai dengan proyek game yang pada saat kehilangan daya tariknya kepada saya dan ditahan. Namun, saya memiliki beberapa musik, dan merasa bahwa itu memang memiliki beberapa potensi layak rilis, saya pikir akan menyenangkan untuk melakukan prod cepat dan merilisnya kepada publik seperti disk musik MS-DOS yang berdiri sendiri, yang juga akan berfungsi sebagai demo untuk kemampuan PCSPE .

Prod cepat ternyata tidak begitu cepat. Beberapa lagu menjadi beberapa lusinan, kumpulan lagu acak berevolusi menjadi album terkonseptualisasi, rencananya telah berubah, tenggat waktu ditunda. Itu berakhir menjadi hampir 1,5 tahun untuk menyelesaikan proyek, dari Juli 2017 hingga 7 Januari 2019. Selama waktu ini saya juga berhasil mengembangkan AONDEMO dan membuat lagu untuk itu (perangkat keras AON sound sangat cocok dengan Speaker PC. ), serta berpartisipasi dalam proyek game Planet X3 sebagai pengembang kode suara dan alat. Game ini juga berakhir dengan menggunakan lagu pertama yang saya buat untuk album sebagai lagu tituler.

Menyelesaikan proyek banyak tertunda, itu semakin banyak lagu, sampai saya menggunakan semua ide asli dan konsep yang dibuat saat mengerjakan proyek. Daftar lagu terakhir mencakup 23 lagu yang dibagi menjadi tiga grup.

Sisi A mencakup 16 lagu utama, kurang lebih terhubung dengan tema dan desain suara. Sebagian besar telah disusun untuk album ini dari awal, atau didasarkan pada bahan lama yang tidak digunakan yang cocok untuk pengaturan monofonik. Untuk kategori ini saya memilih lagu-lagu yang paling orisinal dan merasa paling sukses dalam batasan yang dipilih, dibandingkan dengan yang lain.

Side B mencakup 6 lagu yang konon berkualitas B-side. Sebagian besar adalah versi sampul dari karya saya yang lebih lama untuk platform lain, atau didasarkan pada bahan simpanan yang tidak digunakan yang lebih maju yang awalnya ditargetkan ke media yang sangat berbeda, mulai dari modul pelacak XM hingga lagu pop punk. Sisi ini juga termasuk lagu yang telah digunakan dalam game Planet X3 .

Sisi X termasuk trek bonus, diadaptasi dari AONDEMO dengan perubahan minimal. Itu dipisahkan dari yang lain menjadi pihak ketiga, karena humor.

Album itu sendiri telah disajikan sebagai program untuk MS-DOS 3.3 atau lebih tinggi, yang akan berjalan pada IBM PC XT klasik dengan setidaknya 256 ribu RAM dan kartu video CGA . CGA asli adalah subjek yang disebut "salju", artefak visual yang terjadi setiap kali sebuah program menulis ke memori video selama pemindaian raster. Dengan demikian program album datang dalam dua rasa - pengurangan sbx.com tanpa salju, tetapi tanpa efek analisa spektrum, dan sb.com berfitur lengkap dengan visual lengkap. CPU yang lebih cepat disarankan untuk membuat visual lebih halus. Anda juga dapat menggunakan PC modern dengan FreeDOS yang dimuat dari stik USB , atau emulasi DosBox .

Sisi musik


Album ini tidak menggunakan trik canggih seperti sintesis suara perangkat lunak atau pemutaran sampel. Ia menggunakan teknologi paling tradisional - gelombang persegi monofonik klasik yang dihasilkan oleh saluran PIT. Tingkat pembaruan suara adalah 120 Hz, sedikit lebih tinggi dari biasanya, tetapi tidak ada yang ekstrem. Classic XT sepenuhnya untuk tugas itu, dengan cukup waktu CPU yang tersisa untuk melakukan tugas-tugas lain selain memainkan musik.

Trik sebenarnya adalah dalam pendekatan khusus untuk menyusun dan mengatur musik. Pengalaman masa lalu dalam bidang pengetahuan yang terkait adalah sangat membantu - pengalaman membuat musik untuk chip suara klasik yang sering diperlukan untuk menempatkan beberapa bagian ke dalam saluran tunggal dengan menyisipkan dan melapisi elemen; pengalaman mengembangkan mesin suara gim untuk sistem gim lama, di mana efek suara biasanya harus mencuri saluran suara dari musik; juga pengalaman menggubah musik asli untuk dimainkan pada floppy drive. Ternyata, saya benar-benar mengembangkan pendekatan yang telah digunakan oleh Lucas Art , meskipun saya tidak menyadarinya, dan hanya mendengar tema Monkey Island pada saat itu.

Satu masalah menarik yang perlu dipecahkan segera adalah drum dan perkusi. Dalam chiptune tradisional mereka biasanya dilakukan dengan campuran nada dan white noise. Namun, tidak ada cara bagi Speaker PC untuk menghasilkan white noise sambil menjaga laju pembaruan suara dalam kisaran selusin hingga seratus Hz.

Drum kick dan tom bekerja dengan baik tanpa menggunakan noise, sama seperti nada geser ke bawah dengan kecepatan dan durasi yang berbeda - tendangan adalah slide cepat ke bawah dari nada yang lebih rendah, tom lebih lambat dan lebih lama meluncur ke bawah dari nada yang lebih tinggi. Yang paling penting, snare drum, bagaimanapun, tidak berfungsi dengan baik sebagai slide nada sederhana, itu terdengar aneh dan tidak memotong campuran suara yang sibuk dengan elemen lain. Trik yang umum dalam SID dan AY-3-8910 chiptune bekerja dengan baik di sini - saat hening sejenak dimasukkan tepat setelah slide turun dimulai, yang menciptakan efek roll drum bouncing pendek. Ini membuat suara snare cukup berbeda dari suara perkusi lainnya, dan meningkatkan kemampuan mendengar snare drum dalam campuran suara. Ini bekerja sangat baik mengingat resonansi kuat yang dimiliki Speaker PC nyata.

Karena tidak ada cara untuk menghasilkan white noise, hi-topi tidak dapat digunakan. Untuk membuat suara perkusi lebih menarik, suara drum bervariasi di antara lagu-lagunya. Beberapa trek memiliki drum yang lebih panjang, beberapa pendek dan punchy, kadang-kadang bernada rendah atau tinggi, elemen perkusi tambahan hadir di beberapa tempat.

Sejumlah teknik umum telah dikembangkan saat mengerjakan musik. Ini dapat diterapkan pada pengaturan penulisan yang akan memberi kesan memiliki polifoni untuk perangkat monofonik tanpa kontrol volume - mulai dari kartu pos musik ke mesin CNC ke koil Tesla. Berbagai trik pengaturan meliputi:

  • Persepsi pendengaran menipu ketika suara yang mungkin lebih keras, seperti kick atau snare drum, atau nada dalam melodi utama, membisukan semua bagian lain, tetapi otak tidak terlalu memperhatikan kekurangan unsur-unsur suara lainnya.
  • Pengaturan yang memungkinkan cukup jeda antar suara secara umum, terutama saat bagian intro. Hal ini memungkinkan untuk memisahkan entitas untuk didengar lebih baik, sehingga setelah pengaturan menjadi lebih kuat, otak masih menganggap elemen-elemen itu ada di sana, meskipun mereka hampir tidak terdengar.
  • Memainkan not-not sedikit beat, atau membuat melodi yang menempatkan sebagian besar not-notnya menjadi beat atau off-beat yang lemah, karena tempat-tempat ini cenderung memiliki celah, sehingga not melodi tidak akan mengganggu bass atau suara lainnya. Ini membuat melodi dan backing sangat sinkop, menambahkan beberapa nuansa funky khusus untuk musik.
  • Arpeggio chiptune yang biasa dengan kecepatan yang berbeda, termasuk yang berkecepatan 120 Hz. Berbagai macam kecepatan arpeggio sangat berguna untuk menambah lebih banyak variasi dalam suara, mengingat kurangnya variasi timbral, karena semuanya bermain dengan gelombang persegi sederhana.
  • Kesenjangan dalam suara kontinu untuk memungkinkan bagian lain untuk memotong, atau serangkaian kesenjangan durasi meningkat untuk meniru pembusukan volume.
  • Variasi utama dalam durasi catatan, termasuk penggunaan yang sangat pendek, untuk meniru perbedaan volume. Telah digunakan untuk memberi penekanan pada alur bass, dan efek gema. Echoing dilakukan dengan mengulangi bagian yang sama dengan penundaan dan dengan catatan yang jauh lebih pendek.




Sisi teknis


Elemen kunci lain dalam produksi adalah penggunaan alat-alat modern yang membuat alur kerja lebih efisien dan efisien. Alat-alat termasuk Daper Reaper modern (alternatif untuk FL Studio , Cubase , dan sejenisnya) bersama dengan satu set plugin VST yang dikembangkan khusus.



Pendekatan ini bersifat eksperimental, sangat tidak konvensional dalam pembuatan "chiptune sejati" - yaitu, musik yang dimaksudkan untuk diputar menggunakan perangkat suara aktual di masa lalu. Biasanya pembuatan musik tersebut melibatkan penggunaan perangkat lunak khusus yang disebut pelacak musik, atau persiapan manual dan memasukkan byte data musik ke dalam kode sumber. Hasil yang sama pasti dapat dicapai dengan cara klasik ini juga (persis apa yang saya lakukan untuk Planet X3 ), tetapi ini akan membutuhkan lebih banyak upaya dan mengalihkan fokus dari penciptaan musik ke mengatasi masalah teknis di sepanjang jalan.

Untuk membuat musik Speaker PC , saya membuat plugin VSTi yang disebut PCSPE . Ini mengemulasi internal Speaker PC , memungkinkan untuk mendengar suara realistis dengan semua keanehan dan keterbatasannya, dan menerapkan sistem instrumen chiptune, mirip dengan pelacak musik untuk berbagai chip suara. Ini memiliki amplop untuk volume virtual (prioritas), arpeggio, dan pitch, yang didefinisikan melalui string teks dengan format sederhana seperti MML (relatif dekat dengan string teks yang ditemukan di operator MAINKAN dari BASIC ). Amplop ini memungkinkan untuk mendesain instrumen yang berbeda, misalnya, suara drum, atau instrumen solo dengan kedalaman vibrato yang meningkat secara perlahan.

Tugas utama plugin, bagaimanapun, adalah mencampur beberapa lagu MIDI yang masuk yang berisi berbagai bagian lagu menjadi satu lagu final. Volume virtual yang saya sebutkan di atas berfungsi sebagai dasar untuk sistem prioritas. Hanya satu instrumen yang memiliki volume virtual tertinggi saat ini diputar pada saat tertentu. Misalnya, instrumen bass memiliki volume 2, melodi utama memiliki volume 6, dan semua instrumen drum memiliki volume 8. Dalam hal ini nada melodi akan diprioritaskan daripada nada bass, mematikan bagian bass saat melodi diputar, dan semua drum akan membisukan semua suara lainnya. Begitulah cara beberapa bagian musik yang dimainkan secara bersamaan dicampur ke saluran monofonik Speaker PC .

Plugin ini juga dilengkapi fungsi ekspor yang memungkinkan untuk menggunakan musik dalam program MS-DOS yang sebenarnya. Ini berfungsi seperti data logger sederhana: plugin memiliki informasi tentang frekuensi apa yang mendapatkan output ke Speaker pada saat tertentu, dan waktu perubahan frekuensi. Ketika lagu dimainkan dari awal hingga akhir dengan fitur ekspor diaktifkan, data ini ditangkap dan dituliskan ke dalam file secara real time. Sekarang, untuk memutar ulang musik, yang diperlukan hanyalah mengambil data dari file dan mengirimkannya ke Speaker PC aktual menggunakan timing yang direkam.

Arpeggio chiptune klasik dapat dibuat di PCSPE dengan cara klasik, menggunakan amplop arpeggio yang mendefinisikan urutan offset semitone dari catatan dasar. Namun, hal ini perlu sering berpindah antar instrumen, dan perlu diingat instrumen mana yang perlu digunakan untuk akord tertentu. Ini bukan alur kerja yang nyaman untuk digunakan dalam DAW modern.

VSTi saya yang lain, seorang arpeggiator bernama ChipArp , membantu membuat arpeggio chiptune klasik dengan cara yang jauh lebih mudah. Dibutuhkan akord polifonik normal dari trek MIDI yang masuk dan mengubahnya menjadi arpeggio konfigurasi yang diperlukan (semuanya naik, turun, naik, sesuai BPM yang disyaratkan) on-fly - Anda dapat memainkan akor menggunakan keyboard MIDI dan mendengar arpeggio yang tepat segera. Tidak seperti arpeggiator modern yang dirancang untuk digunakan dalam musik elektronik, plugin saya tidak me-restart catatan untuk setiap langkah arpeggio, melainkan menerapkannya sebagai serangkaian lengkungan pitch cepat dari catatan dasar. Dengan cara ini tidak merusak instrumen dengan aliran suara terus menerus, dan Anda masih bisa mendengar mereka berkembang dalam waktu saat sedang dirancang. Kuncinya di sini adalah bahwa plugin synth perlu mendukung lengkungan pitch lebar dan bereaksi segera, yang bukan merupakan hal umum bagi synth modern. Namun, semua dukungan fitur synth VST saya untuk ini.

Hampir semua emulator, termasuk PCSPE dan hal-hal seperti DosBox , menghasilkan versi ideal dari gelombang persegi, yang terdengar sangat berbeda dari perangkat keras yang sebenarnya. Pengeras suara kecil kecil yang hanya dimaksudkan untuk menghasilkan bunyi bip dasar ini memiliki banyak resonansi dan distorsi yang kuat. Ini memberikan penekanan besar pada transien, yaitu saat-saat menyalakan atau mematikan suara, atau perubahan frekuensi yang cepat. Antara lain, ini membuat drum dan not pendek terdengar jauh lebih punchy pada PC Speaker yang sebenarnya. Untuk mengendalikan dan menggunakan kekhasan ini demi kebaikan yang lebih besar, saya mencatat beberapa respons impuls untuk sejumlah pengeras suara kecil, dan menggunakannya dengan plugin konvolver gratis bernama NadIR - mirip dengan respons impuls dari kabinet gitar yang digunakan saat ini saat merekam gitar yang berat.

Barang


Proyek ini telah dirilis di bawah lisensi CC-BY . Ini termasuk musik itu sendiri, kode sumber pemain, dan proyek Reaper untuk semua lagu. Dengan cara ini Anda dapat melakukan proyek turunan apa pun, baik itu terkait musik atau kode. Semua plugin yang digunakan untuk membuat album juga tersedia secara gratis bersama dengan kode sumber:

Pemutar album MS-DOS
Kode sumber dan proyek Reaper
PCSPE dengan kode sumber
Chipart dengan kode sumber
Speaker kecil memberikan respons impuls

Source: https://habr.com/ru/post/id439192/


All Articles