MSX BASIC — діалект мови програмування BASIC, розроблений 1983 року компанією Microsoft. Є розширеною версією Microsoft BASIC version 4.5 і має підтримку для графічних, музичних та інших можливостей побутових комп'ютерів стандарту MSX. Розроблений як наступник [en] (1983), одного зі стандартних діалектів BASIC для 16-розрядних IBM PC-сумісних комп'ютерів. У процесі розробки MSX BASIC основну увагу приділено гнучкості системи та можливості її розширення.
Поширення
MSX BASIC постачався з усіма комп'ютерами стандарту MSX і записаний у ПЗП комп'ютера. Під час запуску системи, якщо інше програмне забезпечення, записане в ПЗП, не перехоплює керування, запускається MSX BASIC і виводиться запрошення командного рядка. Прикладами програмного забезпечення, що перехоплює керування під час запуску системи, є ігрові картриджі (якщо вставлений в слот, то програма з нього запускається замість BASIC) і контролер дисковода (показує запрошення MSX-DOS, якщо в дисководі є дискета зі системними файлами).
Коли MSX BASIC використовується, ПЗП, що містить код інтерпретатора і BIOS, займає молодших 32 КБ адресного простору процесора Z80. У старших 32 КБ міститься ОЗП, з якого для BASIC-програм та даних доступно від 23 КБ до 28 КБ. Точне значення обсягу доступної оперативної пам'яті залежить від наявності дисковода контролера і версії MSX-DOS.
Середовище розробки
Середовище розробки MSX BASIC дуже схоже на середовище Dartmouth Time Sharing System ([en]). Воно являє собою інтегроване середовище розробки з інтерфейсом командного рядка (винятком є функційні клавіші, що дозволяють вводити деякі команди, що часто використовуються, одним натисканням; їх призначення виводиться в нижній частині екрану). Усі рядки програми мають бути пронумеровані; рядки, що вводяться без зазначення номера, виконуються одразу.
Версії MSX BASIC
Кожна нова версія стандарту на комп'ютери MSX включала нову версію MSX BASIC. Усі версії мають зворотну сумісність та надають можливості використання нового та додаткового апаратного забезпечення нових моделей комп'ютерів.
MSX BASIC 1.0/1.1
- Постачався з комп'ютерами MSX 1.0/1.1
- Об'єм ПЗП 16 КБ
- Відсутня вбудована підтримка дисководів, потрібний картридж Disk BASIC (4 КБ)
- Підтримує всі доступні на MSX1 відеорежими:
- Screen 0 (текстовий режим 40 x 24 символи)
- Screen 1 (змішаний текстовий режим 32 x 24 символів, апаратні спрайти та колір для символів)
- Screen 2 (графічний режим високої роздільної здатності 256 x 192 пікселів, 16 кольорів)
- Screen 3 (графічний режим низької роздільної здатності 64 x 48)
- Повна підтримка апаратних спрайтів та автоматичне визначення їх зіткнень, з генеруванням переривань
- Повна підтримка штатного звукогенератора [en] AY-3-8910 (PSG)
MSX BASIC 2.0
- Постачався з комп'ютерами MSX 2.0
- Об'єм ПЗП 16 КБ
- Додано підтримку нових відеорежимів:
- Оновлення Screen 0 (текстовий режим 80 x 24)
- Screen 5 (графічний режим 256 x 212/424 пікселів, 16 кольорів з 512 доступних)
- Screen 6 (графічний режим 512 x 212/424 пікселів, 4 кольорів з 512)
- Screen 7 (графічний режим 512 x 212/424 пікселів, 16 кольорів з 512)
- Screen 8 (графічний режим 256 x 212/424 пікселів, 256 кольорів, без палітри)
- Режими з 424 рядками можуть відображатися лише у режимі чергування рядків
- Додано підтримку кольорових спрайтів (16 кольорів)
- Додано підтримку апаратних графічних функцій (копіювання блоків, зафарбування та інші)
- Додано підтримку нижніх 32 КБ ОЗП комп'ютера у вигляді віртуального диска з обмеженими можливостями (може зберігати лише деякі типи файлів). Ця область ОЗП недоступна безпосередньо, оскільки ПЗП BIOS та інтерпретатора BASIC лежать у тому самому адресному просторі.
MSX BASIC 3.0
- Постачався з комп'ютерами MSX 2.0+
- Об'єм ПЗП 16 КБ
- Додано команду SET SCROLL для керування плавним апаратним прокручуванням у BASIC-програмах
- Додано підтримку нових відеорежимів:
- Screen 10 (графічний режим 256 x 212/424 пікселів, 12499 кольорів, що відображаються одночасно у форматі YJK + 16 кольорів з палітри, що містить 512 кольорів у форматі RGB)
- Screen 11 (графічний режим 256 x 212/424 пікселів, 12499 кольорів YJK одночасно + 16 кольорів з 512 RGB)
- Screen 12 (графічний режим 256 x 212/424 пікселів, 19268 кольорів YJK одночасно)
MSX BASIC 4.0
- Постачався з комп'ютерами MSX Turbo R (випускалися лише в Японії)
- Додана підтримка відеорежимів 512 x 512 пікселів (16 кольорів з 512) та 256 x 212 (19268 кольорів)
- Додана команда _PAUSE для створення програмних затримок, які не залежать від вибраного процесора та його тактової частоти
- Додані команди для керування пристроєм запису та відтворення цифрового звуку (_PCMPLAY, _PCMREC)
MSX BASIC 4.1
- Постачався з комп'ютером FS-A1GT MSX Turbo R
- Має розширення для роботи з інтерфейсом MIDI
Розширення MSX BASIC
Оскільки можливість розширення передбачено в MSX BASIC від початку, створення додаткових модулів здійснювалося дуже просто. Підтримка додаткових пристроїв зазвичай додавалася за допомогою картриджів, що містили також самі пристрої або апаратний інтерфейс для їх підключення. Наприклад, MSX Disk-BASIC постачався в картриджі, що мав інтерфейс для підключення дисководів, і додавав нові команди для роботи з ними.
Також була можливість розширення MSX BASIC суто програмними методами. Цікавим розширенням для MSX BASIC 1.0/1.1 було розширення під назвою Screen IV, що реалізує додатковий відеорежим змішаного типу, Screen 4, що дозволяв виводити символьну інформацію з роздільністю 64 x 24 символи в графічному режимі високої роздільності (Screen 2).
Цікаві факти
- [ru] створювався з нуля для машин із системою команд PDP-11 під сильним впливом MSX BASIC. Зокрема, збігаються назви більшості операторів та функцій, а також коди повідомлень про помилки.
- Оператор циклу FOR в MSX BASIC мав особливість — за будь-яких значень параметрів циклу тіло циклу виконувалося принаймні один раз.
Посилання
- MSX.bas — сайт португальською мовою, присвячений розробці ПЗ на MSX-BASIC
- MSX2 TECHNICAL HANDBOOK
Вікіпедія, Українська, Україна, книга, книги, бібліотека, стаття, читати, завантажити, безкоштовно, безкоштовно завантажити, mp3, відео, mp4, 3gp, jpg, jpeg, gif, png, малюнок, музика, пісня, фільм, книга, гра, ігри, мобільний, телефон, android, ios, apple, мобільний телефон, samsung, iphone, xiomi, xiaomi, redmi, honor, oppo, nokia, sonya, mi, ПК, web, Інтернет
MSX BASIC dialekt movi programuvannya BASIC rozroblenij 1983 roku kompaniyeyu Microsoft Ye rozshirenoyu versiyeyu Microsoft BASIC version 4 5 i maye pidtrimku dlya grafichnih muzichnih ta inshih mozhlivostej pobutovih komp yuteriv standartu MSX Rozroblenij yak nastupnik en 1983 odnogo zi standartnih dialektiv BASIC dlya 16 rozryadnih IBM PC sumisnih komp yuteriv U procesi rozrobki MSX BASIC osnovnu uvagu pridileno gnuchkosti sistemi ta mozhlivosti yiyi rozshirennya PoshirennyaMSX BASIC postachavsya z usima komp yuterami standartu MSX i zapisanij u PZP komp yutera Pid chas zapusku sistemi yaksho inshe programne zabezpechennya zapisane v PZP ne perehoplyuye keruvannya zapuskayetsya MSX BASIC i vivoditsya zaproshennya komandnogo ryadka Prikladami programnogo zabezpechennya sho perehoplyuye keruvannya pid chas zapusku sistemi ye igrovi kartridzhi yaksho vstavlenij v slot to programa z nogo zapuskayetsya zamist BASIC i kontroler diskovoda pokazuye zaproshennya MSX DOS yaksho v diskovodi ye disketa zi sistemnimi fajlami Koli MSX BASIC vikoristovuyetsya PZP sho mistit kod interpretatora i BIOS zajmaye molodshih 32 KB adresnogo prostoru procesora Z80 U starshih 32 KB mistitsya OZP z yakogo dlya BASIC program ta danih dostupno vid 23 KB do 28 KB Tochne znachennya obsyagu dostupnoyi operativnoyi pam yati zalezhit vid nayavnosti diskovoda kontrolera i versiyi MSX DOS Seredovishe rozrobkiSeredovishe rozrobki MSX BASIC duzhe shozhe na seredovishe Dartmouth Time Sharing System en Vono yavlyaye soboyu integrovane seredovishe rozrobki z interfejsom komandnogo ryadka vinyatkom ye funkcijni klavishi sho dozvolyayut vvoditi deyaki komandi sho chasto vikoristovuyutsya odnim natiskannyam yih priznachennya vivoditsya v nizhnij chastini ekranu Usi ryadki programi mayut buti pronumerovani ryadki sho vvodyatsya bez zaznachennya nomera vikonuyutsya odrazu Versiyi MSX BASICKozhna nova versiya standartu na komp yuteri MSX vklyuchala novu versiyu MSX BASIC Usi versiyi mayut zvorotnu sumisnist ta nadayut mozhlivosti vikoristannya novogo ta dodatkovogo aparatnogo zabezpechennya novih modelej komp yuteriv MSX BASIC 1 0 1 1 Postachavsya z komp yuterami MSX 1 0 1 1 Ob yem PZP 16 KB Vidsutnya vbudovana pidtrimka diskovodiv potribnij kartridzh Disk BASIC 4 KB Pidtrimuye vsi dostupni na MSX1 videorezhimi Screen 0 tekstovij rezhim 40 x 24 simvoli Screen 1 zmishanij tekstovij rezhim 32 x 24 simvoliv aparatni sprajti ta kolir dlya simvoliv Screen 2 grafichnij rezhim visokoyi rozdilnoyi zdatnosti 256 x 192 pikseliv 16 koloriv Screen 3 grafichnij rezhim nizkoyi rozdilnoyi zdatnosti 64 x 48 Povna pidtrimka aparatnih sprajtiv ta avtomatichne viznachennya yih zitknen z generuvannyam pererivan Povna pidtrimka shtatnogo zvukogeneratora en AY 3 8910 PSG MSX BASIC 2 0 Postachavsya z komp yuterami MSX 2 0 Ob yem PZP 16 KB Dodano pidtrimku novih videorezhimiv Onovlennya Screen 0 tekstovij rezhim 80 x 24 Screen 5 grafichnij rezhim 256 x 212 424 pikseliv 16 koloriv z 512 dostupnih Screen 6 grafichnij rezhim 512 x 212 424 pikseliv 4 koloriv z 512 Screen 7 grafichnij rezhim 512 x 212 424 pikseliv 16 koloriv z 512 Screen 8 grafichnij rezhim 256 x 212 424 pikseliv 256 koloriv bez palitri Rezhimi z 424 ryadkami mozhut vidobrazhatisya lishe u rezhimi cherguvannya ryadkiv Dodano pidtrimku kolorovih sprajtiv 16 koloriv Dodano pidtrimku aparatnih grafichnih funkcij kopiyuvannya blokiv zafarbuvannya ta inshi Dodano pidtrimku nizhnih 32 KB OZP komp yutera u viglyadi virtualnogo diska z obmezhenimi mozhlivostyami mozhe zberigati lishe deyaki tipi fajliv Cya oblast OZP nedostupna bezposeredno oskilki PZP BIOS ta interpretatora BASIC lezhat u tomu samomu adresnomu prostori MSX BASIC 3 0 Postachavsya z komp yuterami MSX 2 0 Ob yem PZP 16 KB Dodano komandu SET SCROLL dlya keruvannya plavnim aparatnim prokruchuvannyam u BASIC programah Dodano pidtrimku novih videorezhimiv Screen 10 grafichnij rezhim 256 x 212 424 pikseliv 12499 koloriv sho vidobrazhayutsya odnochasno u formati YJK 16 koloriv z palitri sho mistit 512 koloriv u formati RGB Screen 11 grafichnij rezhim 256 x 212 424 pikseliv 12499 koloriv YJK odnochasno 16 koloriv z 512 RGB Screen 12 grafichnij rezhim 256 x 212 424 pikseliv 19268 koloriv YJK odnochasno MSX BASIC 4 0 Postachavsya z komp yuterami MSX Turbo R vipuskalisya lishe v Yaponiyi Dodana pidtrimka videorezhimiv 512 x 512 pikseliv 16 koloriv z 512 ta 256 x 212 19268 koloriv Dodana komanda PAUSE dlya stvorennya programnih zatrimok yaki ne zalezhat vid vibranogo procesora ta jogo taktovoyi chastoti Dodani komandi dlya keruvannya pristroyem zapisu ta vidtvorennya cifrovogo zvuku PCMPLAY PCMREC MSX BASIC 4 1 Postachavsya z komp yuterom FS A1GT MSX Turbo R Maye rozshirennya dlya roboti z interfejsom MIDIRozshirennya MSX BASICOskilki mozhlivist rozshirennya peredbacheno v MSX BASIC vid pochatku stvorennya dodatkovih moduliv zdijsnyuvalosya duzhe prosto Pidtrimka dodatkovih pristroyiv zazvichaj dodavalasya za dopomogoyu kartridzhiv sho mistili takozh sami pristroyi abo aparatnij interfejs dlya yih pidklyuchennya Napriklad MSX Disk BASIC postachavsya v kartridzhi sho mav interfejs dlya pidklyuchennya diskovodiv i dodavav novi komandi dlya roboti z nimi Takozh bula mozhlivist rozshirennya MSX BASIC suto programnimi metodami Cikavim rozshirennyam dlya MSX BASIC 1 0 1 1 bulo rozshirennya pid nazvoyu Screen IV sho realizuye dodatkovij videorezhim zmishanogo tipu Screen 4 sho dozvolyav vivoditi simvolnu informaciyu z rozdilnistyu 64 x 24 simvoli v grafichnomu rezhimi visokoyi rozdilnosti Screen 2 Cikavi fakti ru stvoryuvavsya z nulya dlya mashin iz sistemoyu komand PDP 11 pid silnim vplivom MSX BASIC Zokrema zbigayutsya nazvi bilshosti operatoriv ta funkcij a takozh kodi povidomlen pro pomilki Operator ciklu FOR v MSX BASIC mav osoblivist za bud yakih znachen parametriv ciklu tilo ciklu vikonuvalosya prinajmni odin raz PosilannyaMSX bas sajt portugalskoyu movoyu prisvyachenij rozrobci PZ na MSX BASIC MSX2 TECHNICAL HANDBOOK