Vinyl record से boot करना
(boginjr.com)- सामान्य PC boot media की जगह turntable (record player) का उपयोग करके IBM PC को boot करने का एक प्रयोग
- 64KB आकार की FreeDOS-आधारित RAM disk image को analog audio signal में बदलकर 10-inch vinyl पर रिकॉर्ड किया गया
- PC के cassette interface का उपयोग करके audio signal को फिर से digital data में बदला गया, उसे memory में लोड किया गया, और फिर boot किया गया
- signal distortion को कम से कम करने के लिए RIAA equalization correction और amplifier settings में adjustment की ज़रूरत पड़ी
- hardware constraints के बावजूद legacy system के creative उपयोग को दिखाने वाला एक अनोखा boot experiment
प्रोजेक्ट अवलोकन
- यह प्रयोग IBM PC को सीधे record player से जोड़कर boot करने के रूप में तैयार किया गया
- जब PC का BIOS दूसरे boot options (floppy, hard disk आदि) से boot करने में विफल होता है, तो ROM bootloader cassette interface को कॉल करता है
- इसी interface के जरिए turntable से चल रहे audio signal को पढ़कर boot प्रक्रिया आगे बढ़ती है
- इस्तेमाल की गई boot image 64KB आकार की FreeDOS kernel-आधारित RAM disk है
- इसमें COMMAND.COM का छोटा संस्करण और printer cable के जरिए file transfer के लिए INTERLNK का modified version शामिल है
- ROM bootloader audio signal को decode करके memory में लोड करता है और फिर system को boot करता है
तकनीकी संरचना
- bootloader BootLPT/86 और 5150CAXX projects के संयोजन के रूप में बनाया गया है, लेकिन printer port support को हटाया गया है
- इसे BIOS expansion socket के ROM में रखा जाता है; hard disk या floppy पर भी install किया जा सकता है, लेकिन इस प्रयोग में ROM का उपयोग किया गया
- PC और amplifier के बीच का connection 5150CAXX जैसी ही cable structure का उपयोग करता है, लेकिन line input jack को छोड़ा गया है
- cassette interface PC speaker timer channel 2 (output) और 8255A-5 PPI port C channel 4 (input) से बना है
- software modulation और demodulation के लिए BIOS की INT 15h routine का उपयोग किया गया
audio signal और vinyl निर्माण
- boot image को “IBM cassette tape” protocol के अनुसार convert करके record cutting equipment को भेजा गया
- vinyl को RIAA equalization curve के साथ cut किया जाता है, इसलिए playback के समय amplifier पर अतिरिक्त correction की आवश्यकता होती है
- high frequencies -10dB/10kHz, low frequencies +6dB/50Hz, output voltage लगभग 0.7V पर adjust किया गया
- phase और loudness correction दोनों को disable रखा गया
- signal quality बेहद महत्वपूर्ण है, क्योंकि pop noise या crackle sound data stream को तोड़ सकते हैं
- हालांकि speed error ±2~3% और हल्का wow (speed fluctuation) स्वीकार्य है
bootloader और image वितरण
- bootloader binary 2364 chip के लिए design की गई है, और adapter के जरिए 2764 chip पर भी इस्तेमाल की जा सकती है
- यह कम-से-कम 512KB RAM और monochrome display वाले IBM 5150 पर काम करती है
- boot disk image BootLPT/86 documentation के नीचे उपलब्ध है, और analog FLAC version अलग लिंक से दिया गया है
समुदाय की प्रतिक्रिया
- टिप्पणियों में “retro technology की वापसी”, “cassette booting जैसा concept” जैसी कई सकारात्मक प्रतिक्रियाएँ दिखीं
- कुछ users ने Sound Blaster input के उपयोग की संभावना, open source BIOS (GlaBIOS) compatibility आदि के बारे में पूछा
- निर्माता ने स्पष्ट किया कि यह BIOS में बदलाव किए बिना केवल expansion ROM से लागू किया गया है
- कई पाठकों ने “उल्टा चलाओ तो Linux boot होगा” जैसे मज़ाकिया कमेंट भी किए
महत्व
- यह प्रयोग analog audio media को digital boot media में बदलने का एक उदाहरण है
- IBM PC के cassette interface और BIOS expansion structure के रचनात्मक पुन: उपयोग का एक तकनीकी प्रयास
- आधुनिक systems में यह आवश्यक नहीं है, लेकिन legacy hardware की समझ और signal processing techniques को समझने के लिए यह एक दिलचस्प project है
1 टिप्पणियां
Hacker News की राय
अगर scanner driver और OCR software को BIOS में डाल दिया जाए, तो शायद यह संभव हो सकता है। आजकल uEFI की वजह से यह और आसान भी हो सकता है
मेरे पास पहले एक SCSI scanner था, लेकिन अफ़सोस कि मैंने उसे parts के लिए खोल दिया
कागज़ पर छपे black-and-white pattern को पढ़कर memory में load करने और फिर boot करने वाला एक simple bootloader भी बनाया जा सकता है। सोच रहा हूँ कि A4 शीट की storage capacity कितनी होगी
Flexi_disc wiki में भी इसका ज़िक्र है, और reliability कम होने की वजह से magazines पहले उसे cassette tape पर copy करने की सलाह देती थीं। disk आम तौर पर सिर्फ 1~2 बार ही चल पाती थी
कहा जाता है कि UK में Thompson Twins game इसी तरह distribute हुआ था
कभी-कभी magazine के cover पर tape चिपकाकर demo भी distribute किए जाते थे, और pencil से tape rewind करके ठीक करने की याद भी है
music वाले dual tape deck से copy भी किया जा सकता था
एक छोटा rectangular device, उसमें कोई moving part नहीं, block unit में data save और load होता है, latency कम है और reliability ज़्यादा
पहले storage कहीं ज़्यादा ‘physical’ हुआ करता था — slow, noisy, magnetic field से प्रभावित, और complex mechanical parts से भरा। सिर्फ आवाज़ सुनकर भी समस्या का अंदाज़ा हो जाता था
storage के evolution को सीधे महसूस करना काफ़ी दिलचस्प है। Conner hard drive टैंक जैसी मज़बूत लगती है, और spin होने की आवाज़ भी शानदार है
इससे फिर एहसास होता है कि simple bytes और blocks के पीछे कितनी कमाल की engineering थी
हमारे घर का पहला computer, Radio Shack cassette player जोड़कर program load करता था
tape rewind करना, play button दबाना, और load command टाइप करना — यह पूरा process किसी ritual जैसा लगता था
बाद में जब 5¼-inch floppy drive मिली, तो सच में बहुत भावुक कर देने वाला पल था। वहीं से मैंने programming शुरू की
BASICODE wiki
पहले broadcast की recording भी बची हुई है। FM reception अच्छा हो तो यह काफ़ी ठीक काम करता था
संबंधित लिंक
यह मेरी generation का नहीं है, लेकिन काफ़ी दिलचस्प कोशिश थी
Discogs लिंक
इसमें chiptune music के साथ Atari और C64 के लिए boot tracks भी शामिल हैं
setting यह थी कि 10 में से 9 customers restored data को हाथ से छूकर महसूस करना पसंद करते हैं। यह वास्तव में आगे नहीं बढ़ा, लेकिन team के अंदर इस पर काफ़ी हँसी हुई थी
asciiexpress.net जैसी sites से stream कर दें, बस
vinyl से भी शायद किया जा सकता है, लेकिन मेरे पास उसे खुद cut करने का equipment नहीं है
intheclouds.io पर लगभग 100 dollars में बनवाया जा सकता है
digital gear भी है, लेकिन उस काली disc को सीधे हाथ से संभालने का संतोष बदला नहीं जा सकता
छोटी गलतियाँ और groove की imperfections तक वैसी ही सुनाई देती हैं, इसलिए वह और भी जीवंत लगता है
cover से निकालते ही grooves की लंबाई देखकर tracks की गिनती और उनकी लंबाई का अंदाज़ा हो जाता है, और सीधे मनचाहे track पर जाया भी जा सकता है। tape की तुलना में यह कहीं ज़्यादा intuitive है
उसकी जगह audio jack जैसे tape interface होते थे, और manually play और stop करना पड़ता था