e_mail: d_korabelnikov@mail.ru
cite: http://www.atd-group.narod.ru

Atomic Destruction с гордостью представляет:

Microspy ретро игра

Эта игра основана на книге "Usborne Computer Spy Games" доступной для бесплатного копирования с адреса

https://usborne.com/browse-books/features/computer-and-coding-books/

Системные требования:

Windows-98 или Windows-XP, дисплей с разрешением 1024*768*32 (или даже меньше), Direct X, около 12 MB памяти (тестировалась на реальной Windows-98 и в эмуляторе Microsoft Virtual PC Windows-98 с 64 MB памяти и работала нормально). То есть игра работает на любом современном компьютере (И, я надеюсь, на любой современной версии Windows).

Установка.

Просто распакуйте ZIP архив игры со всеми подкаталогами. Запустите microspy.exe (английская версия) или microspy_ru.exe (русская версия)

История создания

В 1990 или 1991 году я случайно купил перевод несколькиз книг изрательства Usborne computer publishing. (Это были "Introduction to Computer Programming. BASIC for Beginners" и "Practice Your BASIC" В русском переводе 2 книги называются "Осваиваем микрокомпьютер") В те времена такие красочные книги в бывшем СССР были большой редкостью и ценностью. Мне они очень понравились. Программы и советы из этих книг возможно слишком простые, но написаны остроумно и с большим чувством юмора. Около месяца назад (то есть в августе 2019) я нашёл в Сети большую коллекцию PDF книг Usborne computer books с бесплатным доступом. Я решил переписать некоторые понравившиеся программы из этих книг, используя FreeBasic. Графика для программы Microspy была взята из игры MySims game (С) Electronic Arts. Я использовал неподвижные скриншоты, сохраненные в формате JPG, но я надеюсь, что они достаточно забавны, чтобы украсить старую текстовую игру.

Исходный текст прилагается.

Microspy написан на FreeBasic 1.07, самом мощном и бесплатном BASIC компиляторе, который только можно вообразить. Его можно найти по адресу:

http://www.freebasic.net

Также требуется текстовый редактор FBIDE.

Intel JPEG library - ключ к загрузке JPG файлов

Intel JPEG library (библиотека) была разработана в 1998-2000 годах. Это очень компактная и быстрая MMX-оптимизированная библиотека. Версии 1.0 (меньше по размеру) и 1.5 (поддерживает прогрессивный JPEG, но в целом аналогична по функциям) очень популярны среди программистов. Библиотека бесплатна для загрузки и использования, но в настоящее время Intel её забросила. Вы можете списать IJL с полной документацией для программистов и примерами использования в разделе "coding" моего сайта. В игре Microspy я использую процедуру jpginit() для загрузки IJL10.DLL и функцию jpgload(jname$) для загрузки изображения jname$ из файла. Существует также возможность декодировать JPEG данные из памяти (смотри исходный текст моего скринсейвера Red Alice). Все JPEGи в игре Microspy это 640*480*24 цветные изображения.

Как компилировать исходный текст.

Установите последнюю версию компилятора FreeBasic (Я использовал версию 1.07)
Укажите путь к fbc.exe в файле !make.bat
Запустите !make.bat
Ошибки и предупреждения (если найдутся) будут записаны в файл !errors.txt
Аналогично русская версия компилируется командой
!make_ru.bat
Или Вы можете компилировать microspy.bas из FBIDE, установив команду компилятора:
fbc.exe -lang fblite -s gui -earray -enullptr
(ключи -earray и -enullptr - новые ключи FreeBasic 1.07)

Исходные файлы:

microspy.bas - основной файл игры (английская версия).
microspy_ru.bas - основной файл игры (русская версия).
IJL.bi - Intel JPEG Library декларации
IJL10.DLL - сама библиотека Intel JPEG Library.
microspy.rc - список ресурсов
ystar.ico - иконка
data\ - все JPG изображения, шрифты (BMP) и данные игры хранятся здесь
oldvers\ - spybook.bas - оригинальная версия текстовой игры из книги "Usborne Computer Spy Games".
remline.bas - старая утилита Microsoft для удаления лишних номеров строк из текстов на BASIC.
spy2.bas - ранняя версия текстовой игры для QB 4.5 или Qbasic

microspy.bas - функции и процедуры

function jpgload(jname$) - загружает изображение из JPEG файла.
sub LoadRus - загружает фонт из BMP включая русские буквы.В любой версии программы можно выводить сообщения на русском. Но ввод русских символов с клавиатуры не работает - есть проблема с внутренней функцией FreeBasic INKEY$. Поэтому в программе microspy_ru.bas (русская версия) ввод текста происходит с помощью мыши в процедуре mInput(y,M$,cmd) Собственно наличием этой единственной новой процедуры русская версия и отличается
Процедуры say2,xPrint,xInkey$,xInput и некоторые другие отвечают за ввод и вывод текста (с эффектом прозрачности), опрос действий мыши и т д.
Большинство a* процедур - переписанные процедуры оригинальной текстовой игры Usborne ("RENDEZVOUS") (Смотри также блок "Select CASE" в основной программе).

Почему мы должны использовать последнюю версию компилятора FreeBasic?

FreeBasic для простого (в стиле QuickBasic) кодирования, похоже, не изменился с версии 0.20. Но есть скрытые проблемы - программы, скомпилированные на альфа-версиях FreeBasic неожиданно вылетают в Windows, когда возникают некоторые необычные события (например, при выключении компьютера кнопкой питания) или стабильно работают на одном компьютере, но отказываются запускаться на другом. Последние версии FreeBasic намного более стабильны - авторы FreeBasic отлично поработали над отладкой. Я проверял работу программ, скомпилированных на FreeBasic на Windows XP и Windows 98 а также на тех же системах в эмуляторе Microsoft Virtual PC 2007. (К сожалению, у меня очень старый компьютер) Но я уверен, что microspy.exe будет работать на новейших системах Windows.

Как пройти игру

1. Оставьте ЗАПИСКУ о месте и времени встречи с агентом.
2. ПРОЧИТАЙТЕ пароль.
3. НАЙДИТЕ ключ. Для этого ДВИГАЙТЕСЬ в ОТЕЛЬ, затем ШПИОНЬТЕ за вражеским агентом и ИЩИТЕ в том месте, куда он приведёт. Если Вы потеряли шпиона из виду и не нашли ключа, возвращайтесь в ОТЕЛЬ. Рано или поздно Вы найдёте ключ.
4. ИССЛЕДУЙТЕ ключ. Переместитесь в ПОРТ и откройте сундук. Вы найдете кейс с секретными документами
5. ДВИГАЙТЕСЬ в место встречи. Если вы не помните, где это, напишите ПОМОЩЬ. ПОДОЖДИТЕ здесь, пока ваш друг шпион не придет. СКАЖИТЕ пароль. Теперь ДВИГАЙТЕСЬ на железнодорожную станцию. Вот и все !
Также в игре Вы можете перемещаться куда угодно, а затем ПОДОЖДАТЬ в течение небольшого времени (5 минут игрового времени), чтобы открыть новую случайную картинку.

Кредиты

BASIC программа текстовой игры-прототипа - Usborne Computer Books
Графика - скриншоты взяты из игры MySims (С) Ecectronic Arts
FreeBasic 1.07 компилятор - 2004-2019 The FreeBASIC development team
Intel Jpeg Library - 1999-2000 Intel
XnView 1.91.5 - 1991-2007 Pierre-e-Gougelet
Nconvert 4.11 - 1991-2003 Pierre-e-Gougelet (использовалась, чтобы преобразовать всю BMP графику в JPG)
Icon Sushi 1.17 2001-2005 Towofu

Final words:

Some computers, though, have their own special ways of doing things...
(Некоторые компьютеры, однако, действуют своими особыми способами...)
(C) Usborne Guide to Better Basic