1 पॉइंट द्वारा GN⁺ 2025-06-25 | 1 टिप्पणियां | WhatsApp पर शेयर करें
  • 1997~1999 के beige Power Macintosh G3 ROM में एक छिपी हुई टीम फोटो थी, लेकिन असली डिवाइस पर उसे दिखाने का तरीका 2025 तक ज्ञात नहीं था
  • निर्णायक सुराग nitt resource ID 43 “Native 4.3” के अंत में मौजूद .Edisk, secret ROM image, The Team जैसे Pascal strings से मिला, और यह resource PowerPC-native SCSI Manager 4.3 code था
  • Ghidra से PEF executable को reverse engineer करने पर यह flow दिखा कि जब RAM disk volume का नाम secret ROM image हो, तो HPOE resource ID 1 के JPEG को The Team file के रूप में लिखा जाता है
  • इसे activate करने का तरीका है RAM Disk चालू करके restart करना, फिर RAM Disk को erase करते समय format dialog में बिल्कुल secret ROM image दर्ज करना; यह emulator और असली desktop G3 दोनों पर reproduce हुआ
  • कई tests के आधार पर यह तरीका Mac OS 9.0.4 तक काम करता दिखता है, और संभव है कि 9.1 पहला version हो जिसमें यह अब काम नहीं करता

ROM के अंदर बची हुई छिपी टीम फोटो

  • Power Macintosh G3 ROM की जांच के दौरान, एक अब तक undocumented Easter egg activation method सामने आया
  • संबंधित ROM 1997~1999 में जारी beige desktop, minitower और all-in-one G3 models में इस्तेमाल हुआ था
  • ROM exploration के लिए Hex Fiend और Eric Harmon का Mac ROM template ROM Fiend इस्तेमाल किए गए
  • ROM के अंदर HPOE type resource में इस Mac model पर काम करने वाले लोगों जैसे दिखने वाले कई लोगों की JPEG photos थीं
  • photos का मौजूद होना अपने-आप में नई खोज नहीं है; Pierre Dandumont ने 2014 में इसे पहले ही cover किया था
    • उस समय असली डिवाइस पर इस image को दिखाने का तरीका verify नहीं हुआ था
    • कुछ और पुराने Macs में ऐसी photo दिखाने के लिए secret key combinations थे, लेकिन G3 ROM photo दिखाने का तरीका रहस्य बना रहा

सुराग बना SCSI Manager 4.3 resource

  • आगे exploration में nitt resource ID 43, नाम “Native 4.3” मिला
  • Keith Kaisershot की Pippin research की वजह से जल्दी समझ आ गया कि यह resource PowerPC-native SCSI Manager 4.3 code है
  • resource के अंत में Easter egg से जुड़ सकने वाली Pascal strings थीं
    • .Edisk
    • secret ROM image
    • The Team
  • खासकर secret ROM image के पहले मिली hidden photo से संबंधित होने की संभावना ज्यादा थी
  • internet search के नतीजे में पता चला कि वही phrase पहले के PowerPC Mac के Easter egg में भी इस्तेमाल हुआ था
    • पुराने devices में यह phrase type करके select करने और फिर desktop पर drag करने से photo दिखाई देती थी
    • लेकिन वही तरीका G3 पर काम नहीं करता था

Ghidra से confirm हुआ असली code flow

  • nitt resource ID 43 को पूरा file के रूप में extract करने पर यह PowerPC PEF executable के रूप में पहचाना गया
  • file के पहले 12 bytes Joy!peffpwpc थे, और Ghidra ने इसे सीधे PEF file के रूप में load कर लिया
  • पहली analysis में secret ROM image string references सही से नहीं पकड़े गए, लेकिन Auto Analyze को एक बार और चलाने पर relevant strings के और references मिले
  • संबंधित function .EDisk driver, यानी RAM disk driver, से जुड़े काम कर रहा था
  • decompile result का core behavior यह था
    • .Edisk नाम का driver ढूंढता है
    • उस driver से जुड़ी disk, यानी RAM disk, ढूंढता है
    • उस disk से जुड़ा volume ढूंढता है
    • अगर volume name secret ROM image हो:
      • HPOE resource ID 1 load करके JPEG image data लाता है
      • creator ttxt और type JPEG वाला The Team file बनाता है
      • file खोलकर JPEG data लिखता है और फिर close करता है
      • इसके बाद driver control entry से जुड़े अतिरिक्त operations करता है
  • यह function सिर्फ एक और जगह से call हुआ था, और call site यह check कर रही थी कि पहला argument 0x3DA(decimal 986) है या नहीं

RAM Disk format करके activate करने का तरीका

  • असली beige G3 तत्काल उपलब्ध न होने पर खोज Libera के #mac68k channel में share की गई, और ^alex ने Infinite Mac experiment से यह पता लगाया कि RAM Disk erase करने की प्रक्रिया जरूरी है
  • बाद में desktop G3 के असली hardware पर भी यही तरीका काम कर गया
  • browser में Mac OS 8.1 install किए हुए emulated beige G3 चलाकर इसे reproduce किया जा सकता है
    • यह DingusPPC इस्तेमाल करता है
    • startup पर alias resolution failure error दिखने की एक खास बात है; error आए तो Stop दबा दें
  • reproduce करने की प्रक्रिया यह है
    • Memory control panel में RAM Disk activate करें
    • Special menu से Restart चुनें
    • desktop फिर दिखाई देने पर RAM Disk icon select करें
    • Special menu से Erase Disk चुनें
    • format dialog में बिल्कुल secret ROM image दर्ज करें
    • Erase पर click करें
  • नए format किए गए RAM Disk को खोलने पर The Team नाम का file दिखाई देगा
  • उस file पर double-click करने से SimpleText खुलता है

Mac OS 9.0.4 तक बचा हुआ आखिरी दौर का Easter egg

  • कई लोगों के tests और direct testing के अनुसार यह तरीका Mac OS 9.0.4 तक काम करता दिखता है
  • संभव है कि Mac OS 9.1 पहला version हो जिसमें यह तरीका अब काम नहीं करता
  • अब तक confirm की जा सकने वाली सीमा में यह secret नई खोज जैसा दिखता है
    • ROM के अंदर image होने की बात पहले से ज्ञात थी
    • लेकिन उसे वास्तव में activate कैसे करना है, यह documented नहीं था
  • यह Easter egg उन आखिरी दौर के Mac Easter eggs में से एक हो सकता है जो 1997 में Steve Jobs की Apple में वापसी के बाद Easter eggs पर ban लगाए जाने की reports से पहले शामिल किए गए थे
  • अगर ^alex ने RAM Disk erase करने वाली activation condition न खोजी होती, तो संभवतः बाकी code को और trace करना पड़ता

1 टिप्पणियां

 
GN⁺ 2025-06-25
Hacker News की राय
  • ऐसे ईस्टर एग कुल मिलाकर शुरुआती desktop PC दौर का माहौल बहुत जोर से याद दिलाते हैं
    यह एक बहुत मानवीय तत्व था, जो हमें इस बात से जोड़ता था कि product के पीछे चेहरे और नाम वाले लोग थे जिन्होंने उसे बनाया था
    उस समय ये hardcore nerds के जुनून से बने projects होते थे, लेकिन आजकल माहौल ऐसा है कि product abstraction layer के पार देखने ही न दिया जाए
    product संभालने वाले लोग product की पूरी image नियंत्रित रखना चाहते हैं, और अगर credits की list बहुत बड़ी हो या उसमें कोई व्यक्ति बाद में problematic बन जाए, तो शायद उन्हें dehumanize करना ही ज्यादा सुरक्षित लगता है
    आज के हिसाब से iPhone में ऐसा शानदार ईस्टर एग कल्पना किया जा सकता है जो हर बार activate करने पर development में शामिल कुछ लोगों को random तरीके से दिखाए; मुझे निजी तौर पर यह पसंद आएगा, लेकिन product संभालने वाले लोगों के refined taste को शायद यह खटक जाएगा

    • सोचता हूं कि Agile से पहले ऐसी चीजें शायद ज्यादा होती होंगी
      deadline-driven development में team का कोई हिस्सा milestone पार करने के लिए दूसरे team members के कुछ खत्म करने का इंतजार करता है, और backlog में ही लगातार खंगालते रहने की भी सीमा होती है
      boredom और “छोटी-सी चीज चुपके से डाल भी दें तो roadmap पर असर नहीं पड़ेगा” वाली rationalization मिल जाएं, तो motivation और opportunity दोनों बहुत बढ़ जाते हैं
    • अपने बनाए काम में ईस्टर एग डाल चुके व्यक्ति के तौर पर, सबसे बड़ी समस्या यह है कि prank से ज्यादा कोई value न रखने वाले feature के लिए software में संभावित failure point जोड़ने की हिम्मत नहीं होती
      खासकर अब, जब software इतना जटिल और बड़ा हो गया है; और पता नहीं company में मजाकिया चीज बनाने का समय भी होता है या नहीं
      हमेशा 120% पर काम करने जैसा लगता है
    • सावधान रहना चाहिए, क्योंकि नए Mac में कोई खास shortcut दबाने पर Craig Federighi के घने chest hair वाला full-body portrait full screen में आ सकता है, और chest वाले हिस्से को “infinite” zoom करने के लिए 5GB download भी मिल सकता है
    • पता नहीं product संभालने वाले लोगों से आपको कैसी अजीब नाराजगी है, लेकिन इसका product management से कोई लेना-देना नहीं है
      पुराने software कुछ लोगों द्वारा बनाए जाते थे, लेकिन अब एक ही organization के भीतर हजारों लोग शामिल होते हैं
      अच्छा हो या बुरा, reality यही है, और आज के बड़े software projects में सिर्फ कुछ लोगों को highlight करने वाला ईस्टर एग ज्यादा meaningful नहीं लगता
  • काफी बढ़िया है, और दिखाता है कि companies के पीछे असली लोग होते हैं
    कुछ अमीर लोग “मैंने बनाया” कहकर छोटे लोगों की उपलब्धियों का credit भी छीन लेते हैं
    वहीं असली छोटे लोग इतिहास में यह निशान छोड़ जाते हैं कि “नहीं, इसे हासिल करने के लिए हमने अपनी आत्मा लगाई थी”
    बेशक Steve Jobs होते तो शायद इसे ban कर देते

    • मैं Jobs का बहुत बड़ा fan नहीं हूं, लेकिन मुझे लगता है कि वे कभी-कभी caricature किए जाने वाले villain image से कहीं ज्यादा complex व्यक्ति थे
      इस विषय में तो वे बल्कि ऐसे trend की शुरुआत के करीब थे: https://www.folklore.org/Signing_Party.html
      इसलिए इसे “बेशक” कहने वाली बात नहीं है, और Microsoft की भी 2000s की शुरुआत से ईस्टर एग ban policy थी, इसलिए यह सिर्फ Jobs की समस्या भी नहीं थी
    • संकट में घिरी Apple में लौटे Jobs को किसी secret assembly code में दबे किसी धुंधले ROM image और उसकी location के बारे में व्यक्तिगत रूप से पता रहा होगा, इसकी संभावना कम है
      ज्यादा plausible यह है कि ऐसे “असली लोगों” में से किसी एक ने cleanup करते समय उसे हटा दिया हो
      Jobs ने Apple में काम करने वाले अद्भुत लोगों के बारे में सार्वजनिक रूप से अक्सर बात की, और Walt Mossberg से भी बेहतरीन team बनाने और creativity को बढ़ावा देने की अहमियत पर बात की थी
    • profit को unpaid labor की theft मानने का मेरा विचार पक्का है, लेकिन Meta-level salary हो तो काम पर personal recognition के मुद्दे में Mad Men का वह scene याद आता है
      “वही तो उस पैसे का मकसद है!”
  • मैंने कभी ऐसे व्यक्ति के साथ काम किया था जिसने 80s से 90s के मध्य तक Apple में ASIC और board design किया था
    एक बार hardware team ने system design और debug में खून-पसीना बहाया था, लेकिन software side ने ROM image के करीब 50KB इस्तेमाल करके computer design करने वाली team की प्रशंसा की और hardware team को पूरी तरह छोड़ दिया—इस बात पर वह बहुत नाराज था

  • “We made the Amiga, they f----d it up!” वाला message याद आता है
    https://arstechnica.com/gadgets/2007/12/amiga-history-part-5...

  • ईस्टर एग की सच में बहुत याद आती है
    काश इन्हें वापस लाया जाए

    • सहमत हूं
      आजकल शायद छोटे projects में ही दिखते हों, लेकिन मैं इन्हें बड़े पैमाने के कामों में भी देखना चाहूंगा
      बचपन में जब किसी product के अंदर ईस्टर एग मिल जाता या उसके बारे में सुनता, तो सिर्फ उसे खोजने के लिए भी उस product को ज्यादा इस्तेमाल करता था
      अफसोस है कि छिपी हुई छोटी खुशियां पहले जितनी popular नहीं रहीं, और दुख होता है कि latest Android versions तक में “ईस्टर एग” बस इतना boring रह गया है कि developer features खोलने वाले user को भी निराशाजनक रूप से मामूली interaction देता है
    • FILE_ID.DIZ में एक छोटी-सी चीज है
      https://raw.githubusercontent.com/tirrenotechnologies/tirren...
  • पहले किसी ने iPad पर playground app में छोटा code लिखकर ROM के Next logo जैसा कुछ बुलाने वाला ईस्टर एग share किया था
    उस समय मैंने उसे reproduce किया था, लेकिन बाद में उससे जुड़ी सामग्री फिर नहीं ढूंढ पाया
    लगभग 6 साल पहले की बात थी

  • प्रभावशाली
    यह दिलचस्प है कि इस Easter egg के trigger mechanism को किसी के खोजने में इतना लंबा समय लग गया
    reverse engineering मुश्किल है
    अब जिज्ञासा है कि reverse engineering कहाँ सीखी जा सकती है
    कहाँ से शुरू करें, और क्या कोई online tutorial या किताब की सिफारिश है

    • video games शुरुआत के लिए अच्छी जगह हैं, खासकर NES जैसे पुराने consoles
      प्रयोगों के नतीजे तुरंत दिख जाते हैं और device भी सरल होता है
      हालांकि hardware “API” आधुनिक programmers को काफी intuitive नहीं लग सकता
      hacking और reverse engineering के tools भी पहले से काफी बने हुए हैं, इसलिए अपनी पसंद का NES game Mesen में चलाएँ और browser में nesdev.org खुला रखकर debugging tools से छेड़छाड़ करें
      अगर जिस game पर काम कर रहे हैं उसे किसी ने पहले ही reverse engineer किया है, तो https://datacrystal.tcrf.net पर भी उपयोगी जानकारी मिल सकती है
      ज्यादा आधुनिक software को reverse engineer करना पेचीदा है
      Gamecube game hacking पर पहले लिखे दो लेख भी मजेदार हो सकते हैं: https://www.smokingonabike.com/2021/01/17/hacking-super-monk..., https://www.smokingonabike.com/2021/02/28/hacking-super-monk...
      संबंधित HN चर्चा: https://news.ycombinator.com/item?id=26315368
    • खोज साझा करना हमेशा अच्छी बात है, लेकिन यह अलग सवाल है कि क्या सचमुच 27 साल तक कोई सक्रिय रूप से इसे खोज रहा था
      कई मामलों में बस किसी ने पहली बार code में गहराई से झांकने की कोशिश की होती है
      खासकर Ghidra की वजह से कम लोकप्रिय architectures पर भी decompilation बहुत आसान हो जाने के बाद तो और भी
      एक बार करके देखना चाहिए; कम मेहनत में मिलने वाली चीजें काफी हैं
      पहले मैंने भी ऐसा ही एक मामला submit किया था
      सौभाग्य से, दूसरे operating system Easter eggs के उलट इसमें शायद “खराब support वाले executable format के bitmap resource में stored chained XOR” जैसी obfuscation नहीं थी: https://x.com/mswin_bat/status/1504788425525719043
  • लोग अक्सर Steve Jobs को बहुत ज्यादा देवता जैसा बना देते हैं, लेकिन मुझे यकीन नहीं
    निजी तौर पर मुझे Mac का भटकाव वाला दौर भी काफी पसंद है
    ऐसी चीजें पढ़कर लगता है कि Jobs की वापसी से, भले कुल मिलाकर फायदा हुआ हो, Apple की culture और identity ने कुछ खो दिया

    • मैं Steve Jobs का बड़ा fan हूँ, लेकिन 1985 से 1996 तक Apple का interregnum भी पसंद है
      Sculley, Spindler, Amelio सबसे अच्छे नेता नहीं थे, और Apple Pink/Taligent, Copland, PowerBook 5300, Performa 5200/6200/5300/6300 series जैसे hardware failures से बुरी तरह डगमगा गया था
      खासकर 1995 Apple के लिए आपदा जैसा साल था
      फिर भी इस दौर में कई शानदार बातें थीं
      Jean Louis Gassée ने expandable Mac के लिए लड़ाई लड़ी, और उनका प्रभाव Macintosh II तक पहुँचा, जिसने “trash can” 2013 Mac Pro आने तक न टूटने वाली expandable Macs की लंबी परंपरा शुरू की
      System 7 सबसे stable operating system नहीं था, लेकिन UI बेहतरीन था
      Don Norman और Bruce Tognazzini ने मजबूत UI/UX principles और guidelines को आगे बढ़ाया, और HyperCard भी इसी दौर की देन था
      Larry Tesler, Alan Kay आदि के साथ Apple के Advanced Technology Group ने Dylan programming language और SK8 environment जैसे दिलचस्प projects पर काम किया
      OpenDoc भी component-based software platform बनाने की एक दिलचस्प कोशिश थी
      classic Mac OS में एक आरामदेह और शरारती-सा एहसास भी था, जो Mac OS X पर जाने के साथ गायब हो गया
      बेशक, मैं Mac OS X के लिए बहुत आभारी हूँ
      मुझे “interregnum” वाला Apple भी पसंद है, और Jobs की वापसी के बाद 1997–2011 वाला Apple भी, लेकिन Tim Cook का Apple मुझे खास पसंद नहीं
      उसी समय से लगा कि Apple अपनी जड़ों से काफी बदल गया
      आर्थिक रूप से Apple इतिहास में सबसे सफल हुआ है, लेकिन Mac में अब 1990s या 2000s वाला एहसास नहीं रहा
      Apple अब Mac company से iPhone company बन गया है
  • यह Stump the Experts के लिए बिल्कुल perfect material होता, लेकिन खैर

  • शुरुआती computing के दिनों की teams कितनी छोटी थीं, यह हमेशा मोहक लगता है, और काश किसी तरह उस दौर में वापस जा पाते