أفكار

نظام IDEDOS هو نظام تشغيل أقراص قائم على ذاكرة القراءة فقط (ROM) ، مكتوب بلغة التجميع 6502/65816، مصمم لأجهزة Commodore 64 و 128 و SuperCPU . يتمثل غرضه الرئيسي في التحكم بأجهزة ATA(PI) المتصلة بخرطوشة IDE64 وعرضها كأقراص Commodore عادية. كما يدعم محركات الأقراص الشبكية (PCLink) ويحتوي على مراقب مدمج لرمز الآلة ومدير ملفات .

بنيان

يستخدم نظام التشغيل C64 KERNAL جدولًا متجهيًا في الصفحة 3 للسماح بإعادة توجيه عمليات معالجة ملفات KERNAL الشائعة والوظائف الأساسية. وتستخدم IDEDOS هذه الميزة للربط بنظام التشغيل C64 KERNAL.

ينقسم نظام التشغيل نفسه إلى أربع صفحات، كل منها بحجم 16 كيلوبايت ، ويتم تعيينها عند الحاجة. يتم إيقاف التعيين مؤقتًا أثناء تشغيل المقاطعات لزيادة التوافق، إلا أن هذا يتسبب في زمن استجابة يبلغ حوالي 40 ميكروثانية .  

يتم أيضًا تخصيص ذاكرة وصول عشوائي إضافية للمخازن المؤقتة والبيانات الداخلية، إما من وحدة IDE64 (28  كيلوبايت) أو من ذاكرة الوصول العشوائي الإضافية لوحدة المعالجة المركزية SuperCPU. وتُدار مواقع ذاكرة KERNAL القياسية في الصفحتين صفر واثنين بطريقة متوافقة مع KERNAL؛ وتُستعاد الذاكرة المستخدمة مؤقتًا بعد انتهاء العمليات.

بالإضافة إلى جدول KERNAL، يحتوي IDEDOS على استدعاءين جديدين لمعالجة البيانات المجمعة (قراءة/كتابة) مما يسمح بمعدلات نقل بيانات أسرع بكثير من الإدخال/الإخراج القائم على الأحرف .

نظام الملفات الأصلي ليس من نمط CBM على المستوى الأدنى للسماح بأقسام أكبر من 16 ميجابايت . ويتم الاحتفاظ بالميزات عالية المستوى مثل أسماء الملفات المكونة من 16 حرفًا وأنواع الملفات. ونظرًا للتعقيد ومتطلبات الذاكرة، فإن إنشاء نظام الملفات والتحقق من اتساقه ليسا جزءًا من نظام التشغيل، على عكس CBM DOS أو CMD DOS. 

يتم تجريد أنظمة الملفات الإضافية مثل ISO 9660 أو FAT داخليًا وتستخدم في الغالب نفس الإجراءات للتعامل معها، وبالتالي لا يلاحظ فرق كبير لبرامج المستخدم، إلا إذا لم يتم تنفيذ بعض الميزات بالكامل.

تتم إدارة الأجهزة من خلال تخصيص أرقام أجهزة إضافية للأجهزة الجديدة. أرقام أجهزة IDEDOS قابلة للتكوين، وتتراوح عادةً بين 10 و14. على مر السنين، افترضت العديد من البرامج وجود الجهاز رقم 8 فقط، ولم تسمح باختيار أي جهاز آخر؛ ويمكن تجاوز هذه المشكلة بتغيير رقم جهاز IDEDOS المستخدم مؤقتًا إلى 8.

بالنسبة للأجهزة القياسية، تُستخدم إجراءات KERNAL الأصلية، بينما تستخدم أجهزة IDEDOS إجراءات مخصصة تحاكي بدقة نتائج وسلوك استدعاءات KERNAL لأجهزة الأقراص المرنة. وتُسبب استدعاءات KERNAL التي لا تمر عبر جدول المتجهات (وخاصةً الاستدعاءات الخاصة بناقل IEC) عدم توافق مع البرامج التي تستخدمها.

يتم تنفيذ الميزات الخاصة (مثل معالجة الصوت من الأقراص المضغوطة ) بواسطة أوامر القناة 15 الجديدة، بينما تتبع الميزات غير الموجودة في محركات الأقراص المرنة أوامر نمط CMD للسماح للبرامج بدعم مجموعة أوسع من الأجهزة بسهولة.

على عكس الأجهزة الخارجية الذكية التي تحتوي على معالج منفصل (مثل 1541 مع نظام التشغيل CBM DOS )، يعمل نظام IDEDOS على الحاسوب المضيف، وبالتالي تتوقف جميع إجراءات القرص حتى تنتهي. هذا يستبعد استخدام " محملات IRQ " التي تُستخدم عادةً لتسريع تشغيل الأجهزة الطرفية للناقل التسلسلي .

يُسمح عمومًا بالمقاطعات أثناء تشغيل IDEDOS (يتم تعطيلها في العمليات النادرة التي تتطلب وقتًا حرجًا)، ومع ذلك فقد تمت كتابة النظام ليكون غير قابل لإعادة الدخول ، تمامًا مثل KERNAL الأصلي.

نبذة تاريخية

في عام 1996 ولد IDEDOS، حيث كانت هناك حاجة لنظام لتشغيل بطاقة IDE64 1.1. تم إنشاؤه بواسطة Josef Souček (الرمز الرئيسي) وTomáš Přibyl (مدير الملفات، تكييف شاشة الخرطوشة النهائية). جاء الكود الإضافي بواسطة Jan Vorlíček (امتداد BASIC)، وJan Hlaváček (Duart PCLink).

في عام 2000، أضاف كايتار زولت دعمًا لأقراص CD-ROM، وشفرة تثبيت جديدة، والعديد من الإصلاحات. ونظرًا لقيود التصميم، بدأ كايتار زولت بتطوير نسخة مُعاد كتابتها بالكامل (0.90)، والتي لم تكن جاهزة للاستخدام العام قبل عام 2005. في هذه الأثناء، وصل الإصدار القديم إلى 0.898b في يونيو 2004.

في عام 2009، بدأ حد 64  كيلوبايت للنظام يصبح ضيقًا، وتم إطلاق الإصدار التجريبي IDEDOS 0.91 لإعادة هيكلة الكود للحصول على مساحة أكبر ومرونة داخلية.

IDEDOS 0.898b

كانت هذه هي النسخة الأخيرة من سلسلة IDEDOS القديمة.

دعم الجهاز

نظام الملفات

  • نظام ملفات مخصص يسمى OFS 0.02
  • تصل سعتها إلى 8 جيجابايت ، وتعتمد على عنونة CHS فقط، وتغطي القرص بأكمله. 
  • أسماء الملفات المكونة من 16 حرفًا.
  • أنواع الملفات الثابتة هي SEQ و PRG و USR.
  • يتم دعم الدلائل.
  • يدعم النظام ختم الوقت.
  • ملفات بحجم يصل إلى 4  جيجابايت، وصول تسلسلي فقط
  • دعم نظام الملفات ISO 9660

تحميل سريع

الأجهزة المدعومة بخاصية التحميل السريع المدمجة :

يمكن تعطيل التحميل السريع في الإعدادات في حالة عدم التوافق (غير متوافق مع معيار 1541 كجهاز رقم 8). الحد الأدنى للتداخل هو 7، ولا يتم دعم الحفظ السريع إلا في المدير، ويستخدم تداخلًا بمقدار 8. توقيت متوافق مع نظامي PAL و NTSC .

بروتوكول مخصص، وصول تسلسلي فقط. الأجهزة المدعومة:

شاشة الإعداد

يتضمن ساعة مع تقويم، وإمكانية ضبط أرقام محركات الأقراص، وألوان الشاشة، والتشغيل التلقائي، ومحمل الأقراص المرنة السريع، وساعة أساسية TI$، وإدارة الطاقة ، وإعادة محاولة الكتابة، وإعدادات محرك ذاكرة التخزين المؤقت للقراءة والكتابة المسبقة ، وخيار إبطاء محرك الأقراص المضغوطة.

امتدادات BASIC

يتضمن ملحق BASIC أوامر معالجة الأقراص (مقتصرة على أجهزة IDEDOS)، ويضيف بعض رسائل الخطأ الجديدة. الأوامر:

  • CD– تغيير دليل العمل
  • CDOPEN– افتح درج القرص المضغوط
  • CDCLOSE– أغلق درج القرص المضغوط
  • CHANGE– تغيير رقم جهاز القرص الصلب
  • DATE– طباعة التاريخ والوقت
  • DIR– قائمة الدليل العادية
  • HDINIT- إعادة اكتشاف أجهزة IDE .
  • INIT- تهيئة الذاكرة
  • KILL– تعطيل الخرطوشة
  • LL– قائمة طويلة بالمجلدات مع الطوابع الزمنية، وحجم الملف بالبايت.
  • MAN– ابدأ تشغيل مدير الملفات
  • MKDIR– إنشاء دليل
  • RM– إزالة ملف أو مجلد

مدير الملفات

يمكن استخدامه للتنقل بين المجلدات، وتشغيل البرامج، ونسخ/إعادة تسمية/حذف الملفات، وإنشاء المجلدات، وتشغيل الإضافات للتعامل مع الملفات. أُضيفت خاصية النسخ المتكرر للملفات في الإصدار 0.898b فقط، وفي حالات نادرة لا تعمل.

شاشة

الشاشة مطابقة تقريبًا لشاشة الخرطوشة النهائية في نظام IDEDOS 0.89. لا تتوفر سوى رموز العمليات القياسية 6502. الأوامر هي:

  • A- تعليمات التجميع
  • Bتحويل البنك
  • C– مقارنة مناطق الذاكرة
  • D– فكّ من العنوان
  • EC– تعديل الشخصية
  • ES– تعديل الصورة المتحركة
  • F- املأ مساحة الذاكرة
  • G– بدء التنفيذ عند العنوان
  • H– نمط البحث
  • I– عرض PETSCII من العنوان
  • L- تحميل منطقة الذاكرة
  • M– قائمة الذاكرة
  • O– تحويل البنك
  • P- مطبعة
  • R– عرض السجلات
  • S- حفظ مساحة الذاكرة
  • T- نقل منطقة الذاكرة
  • X– شاشة الخروج
  • @– أمر القرص
  • #– التحويل إلى النظام الست عشري
  • $- التحويل إلى عدد عشري
  • *r- قراءة الكتلة من محرك الأقراص المرنة
  • *w- كتابة الكتلة إلى محرك الأقراص المرنة

ميزات متنوعة

  • التشغيل التلقائي – يمكنه تحميل وبدء تشغيل ملف عند إعادة الضبط أو التشغيل.
  • ألوان الشاشة المخصصة – يمكن تغيير ألوان الشاشة الزرقاء الافتراضية.
  • قم بتعيين TI$متغير BASIC إلى الوقت الصحيح عند إعادة الضبط.
  • يعرض عنواني البداية والنهاية للتحميل.
  • امتداد خاص لقراءة وكتابة بيانات الملفات بكميات كبيرة

IDEDOS 0.90

هذه هي النسخة المستقرة الحالية، وأحدث إصدار هو 20100509 (التحديث 45). أبرز الاختلافات عن الإصدار 0.89 هي:

  • يسمح نظام الملفات CFS 0.11 بالملفات القابلة للبحث والملفات النسبية ودعم LBA والتقسيم.
  • صيغة متوافقة مع أوامر CMD لمعالجة المسارات وأوامر القناة 15
  • بروتوكول PCLink مُحسّن للسماح باستخدام الإيثرنت وUSB
  • شاشة تعمل مثل المجمد وهي أسرع بكثير
  • مدير ملفات أكثر قوة يدعم أجهزة CMD
  • أوامر DOS Wedge
  • مفاتيح الوظائف القابلة للبرمجة
  • دعم امتداد BASIC للأجهزة غير IDEDOS
  • يدعم الجهاز ما يصل إلى 4 محركات أقراص ATA(PI) ، بالإضافة إلى دعم ZIP و LS-120
  • يدعم خرطوشة الإصدار 4.1، وعمليات نقل قراءة/كتابة خطية لسرعة إضافية
  • يمكن الآن استبدال البطارية الموجودة على خرطوشة IDE64 بمكثف فائق .

دعم الجهاز

  • 4 أجهزة ATA(PI): قرص صلب، بطاقة CompactFlash، قرص مضغوط، قرص DVD، LS-120، محرك أقراص ZIP
  • بطاقات Duart/SwiftLink/Turbo232/SilverSurfer RS-232، وRR-Net/ETFE/ETH64 Ethernet، وFT245 USB لـ PCLink
  • SuperCPU v2
  • دعم إضافي لمحركات أقراص JiffyDOS / DolphinDOS

نظام الملفات

  • نظام ملفات مخصص يسمى CFS 0.11
  • سعة تخزين تصل إلى 128  جيجابايت، وعنونة CHS/LBA، وما يصل إلى 16 قسمًا
  • أسماء الملفات المكونة من 16 حرفًا.
  • أنواع ملفات قابلة للتخصيص مكونة من 3 أحرف.
  • يتم دعم الدلائل والروابط الرمزية.
  • يدعم الملفات النسبية.
  • يدعم النظام ختم الوقت.
  • ملفات تصل إلى 4  جيجابايت، قابلة للبحث
  • نظام الملفات ISO 9660 ، دعم جزئي لنظام الملفات OFS 0.02
  • دعم أسماء الملفات القصيرة البطيئة للقراءة فقط مع جداول تقسيم بنمط DOS لأنظمة FAT12/16/32

تحميل سريع

الأجهزة المدعومة:

  • CBM 1541 / 1571 / 1581
  • أي محرك أقراص مزود ببروتوكول JiffyDOS ( CMD FD )
  • دعم إضافي لنظام التشغيل DolphinDOS

يتم الكشف عن دعم الجهاز تلقائيًا، ولكن يمكن تعطيله يدويًا عند الحاجة. توقيت متوافق مع نظامي PAL/NTSC. الحفظ السريع متاح فقط في مدير الملفات.

بروتوكول مخصص، وصول تسلسلي فقط. الأجهزة المدعومة:

  • ناقل تسلسلي IEC
  • كابل متوازي PC64
  • دوارت، سويفت لينك، توربو 232 آر إس-232
  • RR-Net، ETFE، إيثرنت ETH64
  • FT245 USB

شاشة الإعداد

  • ساعة مع تقويم
  • تكوين رقم الجهاز وإعادة تعيينه
  • ألوان الشاشة والإدارة والمراقبة
  • إعدادات متنوعة (التشغيل التلقائي، مُحمِّل الأقراص المرنة السريع، الساعة الأساسية ( TI$))
  • إعدادات جهاز ATA(PI) (إدارة الطاقة، إعادة محاولة الكتابة، ذاكرة التخزين المؤقت للقراءة والكتابة المسبقة، أقصى سرعة قراءة/كتابة خطية)

DOS Wedge

معظمها أوامر DOS Wedge القياسية المعروفة .

  • @– أمر DOS
  • @$– دليل
  • @#- حدد الجهاز
  • /- تحميل برنامج BASIC
  • %– تحميل برنامج التجميع
  • '- التحقق من برنامج التجميع
  • - قم بتحميل برنامج BASIC وتشغيله
  • – حفظ برنامج BASIC
  • £- تحميل وتنفيذ برنامج التجميع
  • .– تغيير الدليل
  • #– تنفيذ أوامر shell

امتدادات BASIC

يضيف ملحق BASIC أوامر معالجة القرص، والتي يمكن استخدامها مع أي جهاز لأنها تستخدم أوامر نمط CMD.

  • CD– تغيير دليل العمل
  • CDOPEN– افتح درج القرص المضغوط
  • CDCLOSE– أغلق درج القرص المضغوط
  • CHANGE– تغيير رقم الجهاز
  • DATE– طباعة التاريخ والوقت
  • DEF- إعادة تعريف مفاتيح الوظائف
  • DIR– قائمة الدليل العادية
  • HDINIT- إعادة اكتشاف أجهزة IDE.
  • INIT- تهيئة الذاكرة
  • KILL– تعطيل الخرطوشة
  • KILLNEW– تجديد
  • LL– قائمة طويلة بالمجلدات مع الطوابع الزمنية، وحجم الملف بالبايت.
  • MAN– ابدأ تشغيل مدير الملفات
  • MKDIR– إنشاء دليل
  • RM– إزالة الملف
  • RMDIR– إزالة الدليل

مدير الملفات

استُلهمت فكرة مدير الملفات من الإصدار 0.89، مع أنه أُعيدت كتابته بالكامل. كان الهدف هو توفير مدير ملفات لا يدعم أجهزة IDEDOS فحسب، بل يعمل بكفاءة مع موجه الأوامر (CMD) ومحركات الأقراص الأخرى.

شاشة

أُعيدت كتابة برنامج المراقبة من الصفر، وكان مصدر الإلهام الرئيسي هو برنامج مراقبة محاكي CCS64، ولكن بعض أفكار الأوامر مستوحاة من برامج مراقبة FC3/AR7/Vice. كان الهدف هو توفير برنامج مراقبة سريع لرمز الآلة، على غرار برنامج Freezer (حيث يمكن تعديل جميع السجلات بما في ذلك سجلات الإدخال/الإخراج)، ويدعم رموز العمليات غير القانونية في وضع محاكاة 6502 وSuperCPU.

الأوامر:

  • @– أمر القرص، الحالة، والدليل
  • A- تجمع
  • B- تكوين الذاكرة، حدد ذاكرة الوصول العشوائي (RAM) / ذاكرة القراءة فقط (ROM)
  • BT– تتبع الأخطاء
  • C– مقارنة الذاكرة
  • D– فك التفكيك
  • ,- كتابة البيانات السداسية العشرية إلى الذاكرة وتفكيكها
  • EC– تحرير الحرف (ثنائي)
  • [- كتابة البيانات الثنائية إلى الذاكرة
  • ES– تعديل الصورة (ثنائية)
  • ]- كتابة بيانات الرسوم المتحركة الثنائية إلى الذاكرة
  • F– املأ الذاكرة بالبايت
  • G– التنفيذ عند العنوان
  • H– ابحث عن hex/any/text
  • I– تفريغ الذاكرة بتنسيق PETSCII
  • '- كتابة بيانات PETSCII إلى الذاكرة
  • IO- تفريغ سجلات الإدخال/الإخراج
  • -- كتابة البيانات السداسية العشرية إلى ذاكرة الإدخال/الإخراج
  • IV- استعادة متجهات الإدخال/الإخراج
  • J– تفريغ الذاكرة في رمز الشاشة
  • .- كتابة بيانات رمز الشاشة إلى الذاكرة
  • K– إلغاء تجميد الذاكرة
  • L– تحميل البرنامج
  • LB- تحميل الملف الثنائي
  • M– تفريغ الذاكرة بصيغة سداسية عشرية و PETSCII
  • :- كتابة البيانات السداسية العشرية أو بيانات PETSCII إلى الذاكرة
  • N– تحويل الأرقام والآلة الحاسبة
  • O– حدد محرك الأقراص الخاص بالعمل
  • R– عرض السجلات
  • ;– سجلات التغيير
  • S- تجميد الذاكرة/حفظ البرنامج
  • SB– حفظ الملف الثنائي
  • T– نسخ الذاكرة
  • V– التحقق من البرنامج
  • VB– التحقق من الملف الثنائي
  • X– مواصلة البرنامج
  • Q– الخروج إلى وضع التشغيل الدافئ الأساسي
  • ←/↑– دفع وسحب العناوين إلى المكدس.

ميزات متنوعة

  • التشغيل التلقائي - يمكنه تحميل وبدء تشغيل ملف عند إعادة الضبط أو التشغيل.
  • ألوان مخصصة للشاشة والمراقبة والمدير - يمكن تغيير الألوان الافتراضية.
  • قم بتعيين TI$متغير BASIC إلى الوقت الصحيح عند إعادة الضبط.
  • يعرض عنواني البداية والنهاية للتحميل/الحفظ.
  • امتداد خاص لقراءة وكتابة بيانات الملفات بكميات كبيرة
  • دعم لوحة مفاتيح C128 في وضع C64
  • أوامر خاصة للتعامل مع محركات الأقراص المضغوطة
  • قراءة الدليل الخام
  • قوائم دليل طويلة بنمط CMD مع طوابع زمنية

IDEDOS 0.91 بيتا

لا يزال هذا قيد التطوير. أبرز الاختلافات عن الإصدار 0.90 هي:

  • تمت إزالة دعم OFS 0.02
  • إجراءات BASIC المحمية، والتسلسلية، وPCLink
  • تعمل مفاتيح الوظائف (F-keys) مع المقاطعات.
  • قراءة $DEF4العمليات أسفل الإدخال/الإخراج
  • تعمل برامج التشغيل التلقائي الآن من أجهزة IEC.
  • حمل PCLink أقل من حمل الإدخال/الإخراج
  • يدعم برنامج SilverSurfer تقنية PCLink، وPCLink اختياري.
  • $DEF4قراءة وتحميل نظام ملفات FAT
  • دعم نظام الملفات لكل قسم، مع إمكانية دمج أقسام CFS وFAT.
  • قائمة التقسيم لـ FAT و ISO9660
  • تعداد محركات الأقراص الديناميكي، واكتشاف PCLink
  • دعم القراءة $DEF4والكتابة $DEF1على الملفات القابلة للتعديل
  • تحديث الطابع الزمني فقط في حالة التعديل
  • البحث عن الملفات القابلة للتعديل والإضافة على PCLink
  • تغييرات بروتوكول PCLink
  • مؤشر LED لنشاط PCLink
  • تم فقدان دعم الملفات النسبية [ 1 ]

مراجع