همام البهنسي

عن تطوير الألعاب... وبعض من الرياضيات والموسيقى

برمجة جيل الطيبين

دعونا للحظة ننسى تعقيدات الحياة البرمجية بما فيها من لغات برمجة ذكر أسماءها فقط يدير الرأس، وتعالوا نعود للغة برمجة لطيفة وبسيطة أو Basic (كما تسمى وتوصف) من قبيل الاسترخاء والحنين للماضي.

معظم أبناء السبعينات عاصروا لغة البيسك في أوجها عندما كانت منتشرة على معظم أجهزة الكمبيوتر الشخصي: صخر (MSX)، كومودور، سينكلير، آبل،... الخ. عني شخصياً كانت ذكرياتي مع البيسك من خلال جهاز صخر، وهذا ما سأستخدمه في البرمجة لجعل التجربة أكثر مصداقية :)

التوليفة التي استخدمها هي أولاً جهاز صخر AX-350 العزيز، محول الصورة Open Source Scan Converter (OSSC) لتوصيل الجهاز على الشاشات الحالية بأفضل جودة. وأخيراً كارتريدج Carnivore 2 لتوسيع ذاكرة الجهاز من 128 كيلوبايت لواحد ميجا! إضافة لإمكانية استخدام Flash Card كقرص صلب بدل من الاعتماد فقط على الأقراص المرنة FDD 3.5.

هذه صورة عائلية للصخر مع بطاقة الذاكرة وكارتريدج الكارنيفوري 2 في زيه الخاص بالصخر العربي :)

بالنسبة للبرامج، قمت بتنصيب نظام تشغيل Nextor 2 والذي هو في الحقيقة نسخة محسنة من نظام مايكروسوفت MSX-DOS2. كما قمت بتحميل محرر للكود ASCII AKID الذي يأتي ضمن حزمة أدوات الدوس 2 (MSX-DOS2 Tools).

قد تكون متحمس مثلي للبدء فوراً والاستمتاع بصوت لوحة المفاتيح الميكانيكية أثناء كتابة أسطر الكود التي ستذيب المعالج ذو 3.6 ميجا (ليس جيجا) هرتز، ولكن غالباً ستكتشف أنك تسرعت قليلاً ونسيت أنك تتعامل مع لغة برمجة بسيطة لا تدعم الكثير من المفاهيم البرمجية الحديثة التي تساعد على التعامل مع الكود وإدارته بشكل فعال. أيضاً تذكر أنك تعمل على نظام تشغيل بدون واجهات رسومية (GUI) أو تعدد وظائف (Multi-tasking). لذلك المنهجية المثلى هي العودة للأساسيات والبدء بتخطيط البرنامج قبل الانتقال لطباعة الكود. قد تبدو بدائي في ترك الكمبيوتر والكتابة على ورقة أو على لوح أبيض ولكني شخصياً أظن أنها أفضل طريقة لتخطيط البرنامج وترتيب الأفكار.

الآن وقد وضعنا خوارزمية البرنامج ومعماريته، يفترض أن نكون جاهزين للعمل في البيسك. انتظر قليلاً! نظراً لبدائية محرر البيسك (تباً مايكروسوفت)، نصيحتي هي أن تكتب الكود باستخدام محرر نصوص مثل Akid. بدونه ستفتقد الكثير من المزايا مثل القص والنسخ ،القفز بين أجزاء الكود، البحث والاستبدال،... الخ التي يفتقرها محرر البيسك ويدعمها Akid.

الآن وقد أصبح الكود جاهز، كل ما علينا هو تحميل ملف الكود في البيسك وتنفيذه.

طبعاً من النادر أن يكون الكود خال من الأخطاء، عملية كشف وتصحيح الأخطاء لا بأس من القيام بها في محرر البيسك وخصوصاً إذا كانت أخطاء هجائية syntax errors أو منطقية محصورة في جزء صغير من الكود. في هذه الحالات تعليمة list هي الحل حيث يمكن تحديد مجال أسطر لسردها ومعالجة المشكلة. في حال المشاكل المنطقية المعقدة أفضل العودة لمحرر الكود أو أحياناً للورقة للتمعن في أجزاء البرنامج دون المعاناة مع محرر البيسك.

لحسن الحظ، التنقل بين الدوس والبيسك سلس نسبياً. للانتقال من الدوس للبيسك، نداء الأمر basic من الدوس يشغل نسخة البيسك المحملة في الذاكرة الدائمة للجهاز (ROM). للعودة للدوس من البيسك، نفذ الأمر call system

هذا كل ما أود ذكره عن توليفة ومنهجية البرمجة المتبعة من قبل أسلافنا المبرمجين الطيبين، وإلى لقاء في ذكريات برمجية أخرى.

التعليقات (3) -

  • ولاء ياقوت

    19/01/2022 05:40:42 م | الرد

    مدونة عظيمة جدا
    بالتوفيق

  • Cookiesliyr

    21/09/2022 07:09:01 م | الرد

    ويا ترى قاعد تستخدم بيسك العربي أو الإنجليزي؟ جهاز الصخر الي كنا نستخدمه كان فيه interpreter للغة البيسك بالغة العربية وكل شيء نكتبه كان يقول لنا
    خطأ نحوي تم

    ما كنا نفهم ويش ذا ولكن كان يحل لنا معادلات رياضية بسيطة، كانت اول تجربة لي للبرمجة عن طريق الخطأ لاحقا أكتشتف إن الجملة معناها Syntax error

    • همام البهنسي

      22/01/2024 08:05:46 م | الرد

      نعم أستخدم البيسك الإنجليزية. أظن أن البيسك العربية بحاجة لكارتيردج خاص إلا في حالة موديلات محددة مثل صخر 370 على حسب ما أذكر.

      بالنسبة لي، كنت ومازلت استمتع بأوامر الرسم في البيسك. سأحاول ان شاء الله كتابة تدوينة عنها يوما ما Smile

أضف تعليقاً

Loading