Retrocomputing Комп'ютерна інженерія

Чергове збочене використання С++

Прикол

Люблю С++, використовую її цілу вічність, викладаю тривалий час. Звичайно, усвідомлюю недоліки – як то кажуть, “ти змушуєш мою голову битися частіше”, періодами за це ненавиджу. Але, все ж, значна частина складнощів – не через саму мову. Свій вклад дає давня історія, багаж зворотної сумісності і безлічі застарілих практик1. Однак, підозрюю, вагому роль відіграє також щось схоже на переляк – внаслідок заплутаності через складність мови і безлічі правил.

Наштовхнув мене на цю думку код, який трапився в дипломній роботі мого студента – дуже потужного.

  1. Останніх особливо важко позбутися – через безліч згадок в Інтернеті, відсутність потреби оновлювати свої знання в багатьох досвідчених розробників, та й через згадану зворотну сумісність. 

Продовження...

Комп’ютерна інженерія

Вітаю у розділі узагальнено кажучи, комп’ютерної інженерії. Створюється, в основному, за матеріалами мого викладання на Факультеті прикладних наук УКУ та роботи із кластером ІФКС.

C++

Методичні матеріали

Статті

Бібліотеки

Основи – “Принципи організації комп’ютера”

Високопродуктивні обчислення та “Архітектура комп’ютерних систем”

Методичні матеріали

Застарілі тексти

Операційні системи

Файлові системи

Дещо застаріла серія статей про Lustre (2011)

Embedded

Методичні матеріали

Далекомір HC-SR04

  1. Далекомір HC-SR04 – зміст
  2. Далекомір HC-SR04 – огляд.
  3. Далекомір HC-SR04 – використовуючи GPIO/CMSIS
  4. Далекомір HC-SR04 – використовуючи GPIO/SPL
  5. Далекомір HC-SR04 – використовуючи GPIO/CoX
  6. Далекомір HC-SR04 – використовуючи GPIO/HAL/STM32CubeMX
  7. Далекомір HC-SR04 – GPIO/C++
  8. Далекомір HC-SR04 – GPIO/висновки
  9. Далекомір HC-SR04 – два таймери/CMSIS
  10. Далекомір HC-SR04 – два таймери/HAL
  11. Далекомір HC-SR04 – один таймер/CMSIS
  12. Далекомір HC-SR04 – один таймер/HAL
  13. Далекомір HC-SR04 – зовнішні переривання EXTI/CMSIS
  14. Далекомір HC-SR04 – зовнішні переривання EXTI/HAL
  15. Зовсім просто про далекомір HC-SR04 із GPIO/HAL

Таймери STM32

-2. Відлік часу без таймерів -1. Мікросекундні затримки та відлік мікросекунд для STM32

  1. Таймер SysTick
  2. Таймери STM32 – огляд
  3. Таймери STM32 – відлік часу/CMSIS
  4. Таймери STM32 – відлік часу/HAL
  5. Таймери STM32 – ШІМ/CMSIS
    Розповідається, що таке ШІМ, і як попросити таймер генерувати його на одному із  своїх каналів. Розгляд відбувається на класичному прикладі керування яскравістю світлодіода.
  6. Таймери STM32 – ШІМ/HAL
  7. Таймери STM32 – зовнішнє тактування/CMSIS
  8. Таймери STM32 – зовнішнє тактування/HAL
  9. Таймери STM32 – внутрішні тригери/CMSIS
  10. Таймери STM32 – внутрішні тригери/HAL
    Те ж, засобами HAL. Розглянуто, як HAL керує налаштуванням генерацією TRGO (функція HAL_TIMEx_MasterConfigSynchronization()) та внутрішнім тактуванням (HAL_TIM_SlaveConfigSynchronization())
  11. Таймери STM32 – автоматична зупинка/CMSIS
  12. Таймери STM32 – автоматична зупинка/HAL
  13. Таймери STM32 – захоплення вводу/CMSIS
  14. Таймери STM32 – захоплення вводу/HAL
  15. Таймери STM32 – захоплення ШІМ/CMSIS
  16. Таймери STM32 – захоплення ШІМ/HAL
  17. Таймери STM32 – одноімпульсний режим/CMSIS
  18. Таймери STM32 – одноімпульсний режим/HAL
  19. Таймери STM32 – remapping/CMSIS
  20. Таймери STM32 – порівняння розмірів коду для CMSIS i HAL

Статті

I2C EEPROM – 24CXX

Перша моя серія статей про Embedded – виконувалося із дуже обмеженим доступом до обладнання і взагалі без попередніх знань. Можливо, колись оновлю.

Застарілі тексти

Залишаю їх для колекції та для довідки:

Інше

Продовження...

Сучасні плати для IBM PC/XT

Виявилося,нові плати оновлення та інше обладнання для ретрокомп’ютерів, розробляють та продають досі. При тому, IBM PC, певне, навіть не найпопулярніша платформа.

Коротко розповім про деякі плати, які або вже використовую, або хотів би мати – не намагаючись досягнути повноти. Власне, це було б важко – список лише на Tindie справляє враження.

Продовження...

AST Rampage

Огляд

Один із моїх улюблених костилів епохи IBM PC – EMS. Причому, її емуляція на 286+ – не так цікаво, хочеться для справжнього 8086/88-комп’ютера – IBM-XT-подібного. Плат із такою пам’яттю було помітно більше, ніж “Дивних плат оновлення”, тому придбати їх на ebay реально, хоча й вимагало певної терплячості, поки з’являється лоти із прийнятними цінами.

Моя AST Rampage. На фото – 256 Кб RAM. На жаль, роз’єм для Daughter board не розпаяний.
Продовження...

Дивні плати оновлення із 1980-х

“DOS: Beyond 640K”

Останні роки, замість художньої літератури, часто читаю старі комп’ютерні книжки. Про деякі вже писав, про інші ще планую. Поміж них трапилася “DOS: Beyond 640K” by James S. Forney, 2nd ed., 1992 року. Читати її було жахливо. Автор знову і знову повторював одне і те ж, трішки різними словами, а коли дістало так, що написав комусь поскаржитися, на наступній сторінці автор буквально сказав: “Повторю ще раз” і скопіював попередній абзац. Навіщо ж я її читав? Це хороший спосіб зануритися в атмосферу тодішніх “персоналок” – часто дуже відмінну від сучасного світу.

Поміж іншого, там були описані плати оновлення (upgrade) для тогочасних комп’ютерів. І карти ті були настільки, для наших часів, незвичні, що я вирішив про них написати.

Продовження...

COBOL під CP/M на Osborne Executive

Огляд

COBOL – мова дуже давня, але асоціюється з великими машинами, тому для мене було великим сюрпризом зустріти її для CP/M і комп’ютерів класу Osborne.

Продовження...

Інструменти програмування на асемблері для CP/M та Osborne Executive

Огляд

CP/M існує для кількох сімейств процесорів. Поміж восьмибітових це Z80, i8080 та i8085. Для випробувань асемблерів використовую два варіанти – чисто для i8080 і з мнемоніками Z80. Різниця між їх системами команд та мнемоніками описана, наприклад, в: “8080A/Z80 compatibility”.

Приклад, на якому буду випробовувати – тривіальний ‘‘Hello, world’’, який виводить текст за допомогою славнозвісний1 системний виклик 9 – ‘‘Output string’’, код якого передається регістром C, адреса стрічки в DE, а стрічка має закінчуватися символом ‘$’.

  1. '’Ask Bill [Gates] why the string in [MS-DOS] function 9 is terminated by a dollar sign. Ask him, because he can’t answer. Only I know that.’’, цитуючи за “Bill Gates: Of Mind and Money”, “Seattle Post-Intelligencer” Newspaper, May 8, 1991. Цей системний виклик з 1970-х, відтворений DOS 1.00 в 1981, все ще вивчали в деяких провідних ВИШах не пізніше 2020-го… 

Продовження...

Текстовий редактор te

te

Важливий інструмент для ‘‘реконструкторських’’ експериментів – текстовий редактор. Працювати з ED.COM я поки не готовий. Хоча редагувати файли із кодом можна в WordStar – кажуть, у свій час його для того і використовували, мені не дуже сподобалося – він громіздкий. Пошуки виявили сучасну альтернативу – текстовий редактор te для CP/M, від MiguelVis – великого ентузіаста CP/M.

Продовження...