PureBasic V1.60 - руководство пользователя
Новые возможности языка программирования БЕЙСИК
© 2000 Fantaisie Software
Введение
Условия применения
Системные требования
Установка продукта
Как приобрести полную версию
Связь с авторами
Благодарность помощникам
История развития проекта
Перевод руководства на русский языка выполнил MacBuster^tPA
PureBasic - это новый язык программирования "высокого уровня",
основанный на уже давно устоявшихся и ставшими стандартными правилах языка
"БЕЙСИК". PureBasic совместим с другими компиляторами БЕЙСИКА,
существующими на Амиге или на любых других платформах. Он очень прост в
освоении как для новичков, делающих свои первые шаги в программировании,
так и для тех, кто давным-давно стал экспертом в этом деле. Особенную
привлекательность ему придает тот факт, что время компиляции ваших
программ сведено к минимуму!
В процессе создания PureBasic мы старались прежде всего ориентироваться
на особенности Амиги и использовать все ее уникальные возможности. Как
можно более полное взаимодействие с операционной системой для получения
наиболее эффективного результата - именно это было предметом особого
внимания. Нам пришлось проделать огромную работу для того, чтобы в
конечном итоге вы получили надежный, быстрый, но вместе с тем простой и
удобный язык программирования, пригодный для решения широкого круга задач.
Вы просто не сможете написать плохие программы, воспользовавшись основным
набором команд! Конечно же, вам ничто не помешает добавить ваши
собственные функции, если вы будете ощущать острую необходимость в
максимальном использовании всех возможностей Амиги.
Нам удалось добиться сочетания очень простого синтаксиса с огромными
возможностями, что особенно заметно при использовании дополнительных
функций, которые были введены нами, таких как: указатели, структуры,
связные списки, динамически изменяемые связнные списки и прочее. А для
опытных программистов введена возможность непосредственного взаимодействия
со всеми стандартными структурами и объектами, использующимися в
операционной системе Амиги.
На данный момент PureBasic поддерживает только процессоры серии 680x0, но
очень скоро появится поддержка процессоров PowerPC. Несмотря на то, что в
компиляторе уже есть генератор кода для PowerPC, он ещё не полностью
реализован. Но мы надеемся на то, что после надлежащей отладки и добавления
функций мы сможем предложить вам такой компилятор, который будет полностью
использовать все возможности этого процессора. Сейчас компилятор может
генерировать почти идеально оптимизированный код для 68000, но мы уверены в
том, что и здесь есть возможность ещё что-нибудь улучшить. И мы обещаем вам
попытаться добиться лучшего!
Основные возможности PureBasic:
- Поддержка 68000 и 68020+ (скоро появится и PowerPC).
- Внутренняя поддержка массивов, динамически-изменяемых связных
списков, сложных структур, указателей и определения переменных.
- Встроенная поддержка следующих типов данных: Байт (8 бит), Слово (16
бит), Длинное слово (32 бита), а также определяемых пользователем
типов (структур).
- Стандартные типы данных могут быть знаковыми и беззнаковыми.
- Встроенная поддержка строковых типов.
- Поддержка констант, двоичной и шестнадцатеричной систем счисления.
- Оптимизатор вычислений на основе группировки констант и однотипных
числовых данных.
- Все вычисления производятся с учетом приоритета, поддерживаются
следующие действия: +, -, /, *, and, or, lsl, asl, lsr, asr.
- Компилируется до 30,000 строк в минуту при наличии 68030/50 (если
используется PoolMem).
- Поддержка процедур в стиле структурного программирования, также
локальных и глобальных переменных (находится в стадии доработки).
- Все стандартные операторы языка БЕЙСИК: If-Else-EndIf, Repeat-Until,
и прочие.
- Взаимодействие с многопользовательскими библиотеками функций для
упрощения работы с такими объектами как: IFF изображения, экраны,
окна, гаджеты, и другие.
- Работа со стандартными библиотеками функций операционной системы так
же проста, как и работа со стандарными операторами языка.
- Встроенный ассемблер.
- В целях сокращения необходимого для компиляции времени используются
предварительно скомпилированные файлы структур и констант.
- Отладчик для прерывания исполнения программы и пошаговой отладки
частей программы, вызывающих сомнения в правильности реализации.
- Компилятор может принимать входные параметры через командную строку.
- Стабилен, прост в установке и освоении, постоянно развивается.
Программный продукт PureBasic (далее - программный продукт) поставляется
в соответствии с общепринятым в международной компьютерной практике
принципом "КАК ЕСТЬ". Это означает, что за проблемы, возникшие в процессе
эксплуатации программного продукта (в том числе: частичная или полная
потеря данных; частичное или полное повреждение данных; упущение выгоды;
проблемы совместимости с программными продуктами третьих фирм, а также за
проблемы, способные возникнуть из-за неоднозначного толкования данной
документации пользователем), компания Fantasie Software и лица,
осуществлявшие перевод руководства пользователя, а также локализацию
программного продукта, ответственности не несут. Приступив к использованию
программного продукта, пользователь полностью осознает тот факт, что он
использует данный программный продукт на свой собственный страх и риск, а
также подтверждает то, что он предварительно ознакомился с условиями о
пользовании программным продуктом и безоговорочно принял их.
Демонстрационная версия этого программного продукта может быть свободно
распространена при соблюдении условия сохранения неизменности содержимого
оригинального архивного файла. Удалять, добавлять, изменять файлы, а также
производить прочие изменения содержимого оригинального архивного файла
можно только с предварительного письменного разрешения Fantasie Software.
На распространение демонстрационной версии программного продукта с
применением любых средств хранения данных, распространяемых совместно c
компьютерными журналами, требуется предварительное письменное разрешение
Fantasie Software.
Fantasie software сохраняет за собой все права на изменение программного
продукта и распространяемого архива.
- AmigaOS версии 3.0 и выше
- 1 Мб свободной памяти
PureBasic будет работать на любой Амиге, если ее параметры совпадают с
указанными требованиями. По всем вопросам, связанным с работоспособностью
данного программного продукта, связывайтесь с нами.
Для установки PureBasic на ваш жесткий диск лучше всего воспользоваться
прилагаемым скриптом "Install". В том случае, если по каким-либо причинам
вы не смогли или не пожелали воспользоваться скриптом "Install", вы можете
самостоятельно скопировать подкаталог "PureBasic", находящийся в каталоге
"PureBasic_1.60_Demo", в тот каталог, куда вы хотите произвести установку
компилятора. После этого следует добавить в файл "S:User-startup"
следующую строку:
Assign PureBasic: "Work:PureBasic"
изменив путь "Work:PureBasic" на путь к тому каталогу, в который вы
установили PureBasic (если он отличается от указанного в примере). После
этого следует перезагрузить Амигу. Только произведя все эти действия, вы
сможете корректно запустить PureBasic.
На данный момент PureBasic представляет собой условно бесплатный
программный продукт, регистрация которого производится за небольшую плату.
Но в самом ближайшем будущем ситуация изменится и PureBasic перейдет в
разряд коммерческого программного обеспечения. Причем произойдет это уже
при выпуске версии 2.0, в первой четверти нового тысячелетия. Конечно же,
скорость развития проекта зависит от количества зарегистрировавшихся
пользователей. Если появится пиратская версия этого продукта и вы рискнете
ей воспользоваться, то, пожалуйста, имейте ввиду, что лично вы и станете
причиной замедления, а может быть, и полного прекращения работ по его
развитию. Пожалуйста, не используте пиратские версии програмных продуктов.
Зарегистрировавшиеся пользователи получат все последующие обновленные и
исправленные версии PureBasic совершенно бесплатно!
Демонстрационная версия PureBasic имеет следующие ограничения:
- только 4 библиотеки дополнительных функций (misc, linked list, window,
screen) могут быть задействованы в ваших программах;
- вы не можете задействовать многопользовательские библиотеки AmigaOS;
- нет средств разработки библиотек дополнительных функций;
- максимальное количество строк в вашей программе: 200;
Стоимость регистрации:
США : 70 долларов
Англия : 40 фунтов
Германия : 120 марок
Франция : 400 франков
Оплата может быть произведена почтовым чеком, Евро-чеком или наличными,
вложенными в конверт (прячьте как можно лучше!), которые следует выслать
на следующий адрес:
Frederic Laboureur
10, rue de Lausanne
67640 Fegersheim
France
Полноценная версия PureBasic высылается в день получения регистрационного
взноса. Не забудьте указать, каким именно образом вы желаете получить
вашу копию - по электронной или по обычной почте!
Заполненный латинскими буквами регистрационный бланк следует послать по
следующему адресу:
Frederic Laboureur
10, rue de Lausanne
67640 Fegersheim
France
----8<------8<------8<------8<--Линия отрыва--8<------8<------8<------8<---
Я желаю приобрести полную версию PureBasic.
В качестве регистрационного взноса высылаю (отметьте нужный пункт):
( ) FF400.00 ( ) DM120.00 ( ) 40.00UKP ( ) US$70.00
Имя: _________________________________________________________
Адрес: _________________________________________________________
_________________________________________________________
_________________________________________________________
Страна: _________________________________________________________
Телефон: _________________________________________________________
EMail: _________________________________________________________
Вся указанная здесь информация конфиденциальна и будет сохранена
в полной тайне.
Компания Fantasie Software не будет распространять
ее ни при каких обстоятельствах.
Я высылаю свой регистрационный взнос в качестве (отметьте нужное):-
( ) Наличных, в указанной выше валюте.
( ) Евро-чека. Самый дешевый и безопасный метод для европейцев.
( ) Другое? Необходимо ПРЕДВАРИТЕЛЬНО согласовать с авторами по
E-Mail.
Регистрационный взнос может быть принят только в одной из указанных
выше валюте.
Никакая другая валюта не может быть использована.
Пожалуйста, вышлите мне полную версию (отметьте желаемый способ):-
( ) По EMail (UU - MIME присоединенным файлом)
( ) Международной почтой (на дискете)
Я прочитал все требования и условия и безоговорочно с ними согласен.
__________________ ________________________________________
Дата Подпись
Пожелания и предложения, касающиеся PureBasic (на английском языке):
___________________________________________________________________
___________________________________________________________________
Посылайте свои замечания, предложения, советы по улучшению, информацию о
найденных ошибках и недочетах по следующим адресам:
Frederic "AlphaSND" Laboureur
Фред "AlphaSND" - это основатель компании "Fantasie Software" и тот
самый человек, который написал основную часть проекта PureBasic. Все
советы, предложения, замечания и информация о найденных недочетах и
ошибках должны быть посланы ему по одному из приведенных ниже адресов:
s-mail: Frederic Laboureur
10, rue de Lausanne
67640 Fegersheim
France
e-mail: alphasnd#free.fr
Richard Andersson
Ричард - весьма талантливый программист, который очень помог Фреду при
создании стабильных и мощных ассемблерных библиотек функций,
использующихся в PureBasic. Если вам потребовалась новая библиотека
каких-нибудь функций, то не стоит медлить - cвяжитесь с ним:
e-mail: rzs735w#tninet.se
Я хочу от всего сердца поблагодарить всех тех людей, которые помогали
мне в работе над PureBasic. Вполне вероятно, что если бы не было их помощи
и поддержки, то проект не был бы завершен!
Frank WILLE:
За то, что позволил мне использовать его превосходные ассемблеры: "pasm"
и "PhxAss!". За все подсказки и ценные предложения по их использованию. А
также за помощь в отладке генератора кода для PowerPC.
Steffen HAEUSER:
За то, что он потратил свое весьма ценное время на объяснение аспектов
программирования PowerPC, и другие, не менее ценные, советы.
Thomas RICHTER:
За создание превосходной утилиты "PoolMem". Это небольшая резидентная
программа, применение которой позволяет сократить время компиляции в 2-3
раза! Также спасибо за разрешение включить ее в распространяемый архивный
файл PureBasic.
Roger BEAUSOLEIL:
Первый человек, который полностью поверил в осуществимость этого проекта
и стал помогать в его реализации. Он оказал неоценимую помощь в разработке
дизайна PureBasic.
LES
За исправление ошибок на английском варианте сайта Fantasie Software и
за исправление руководства. Теперь все это выглядит значительно лучше!
Andre BEER:
За полный перевод руководства на немецкий язык. Большое спасибо!
Francis G.LOCH:
Помог исправить все ошибки в английском варианте руководства. Спасибо!
Зарегистрировавшиеся пользователи:
За поддержку Амиги и компаний, производящих для нее программные продукты.
BlitzBasic mailing list
Присылайте ваши впечатления от работы и предложения непосредственно
компании Fantasie Software по адресам, указанным в описании регистрации.
V1.60 (09.09.2000):
- Теперь можно использовать "tab" вместо пробела
- Исправлено несколько незначительных ошибок в компиляторе
- Добавлено четыре новых библиотеки функций:
- Audio (для вывода звука)
- Protracker (для проигрывания модулей ProTracker'а)
- Network (основана на TCP/IP протоколе, предоставляет очень быстрый
доступ к сети для программ, использующих Интернет и для сетевых игр)
- Memory Bank (для работы с памятью)
- Добавлены три новые функции в библиотеку Misc: MouseButtons(),
GetCliArg() и NumberOfCliArgs()
- Обновлена функция: OptionGadget()
- Исправлена функция: FileRequester(), AddElement()
- Исправлена библиотека "Menu" (не работала с выпуска версии 1.50)
V1.50 (11.07.2000):
В компиляторе:
- Исправлено множество незначительных ошибок
- Добавлен оптимизатор кода для 68020+
- Применены новые методы оптимизации для уменьшения/ускорения программ
- Работает чуть быстрее и редактор больше не виснет
- Поддержка локализации. Теперь сообщения об ошибках будут на вашем
языке!
В библиотеках:
- Совершенно новая библиотека: "PopupMenu" создающая всплывающие меню
- Изменения в существующих функциях (читайте документацию):
ChunkyToPlanar(), StartTimer(), StopTimer(), InitToolType()
ButtonGadget(), StringGadget(), CycleGadget(), ListViewGadget()
PaletteGadget(), OptionGadget()
- Библиотека "Menu" была полностью переписана
- Исправлены функции:
AddSprite(), ReadLong(), LoadPicture(), UseGadgetList(), Left()
GetToolTypeString(), WindowMouseX(), WindowMouseY()
В редакторе:
- Новая Система Вывода Структур, помогающая вам разобраться в структурах
- Редактор теперь можно открывать на своем собственном экране
- Можно сменить шрифт
- Добавлена пункт "Run"
- Исправлено много ошибок
- Обновлена документация
V1.40 (14.03.2000):
В компиляторе:
- Теперь можно использовать команды ассемблера с операторами БЕЙСИКА
- Добавлена поддержка "Объединений" в "Структурах"
- Обновлен и исправлен резидентный файл (Small_AmigaOS)
- Устранено несколько ошибок
В библиотеках функций:
- Добавлено четыре совершенно новые библиотеки функций:
- AmigaSprite
- Joypad
- Sprite
- Timer
- Добавлено пять новых функции:
- Requester: EasyRequester()
- BitMap : ShowBackBitMap()
- Screen : CreateDualPlayfield(), RemoveDualPlayField()
- Palette : LoadPalette()
- Прочие изменения:
- ShowBitmap() теперь быстрее и больше не выполняет VWait().
- "Stop" переименован в "CallDebugger"
- Битмэпы теперь открываются в "Interleaved" режиме. Все функции были
переписаны для ускорения.
- Некоторые ошибки были замечены и удалены из библиотеки "Sound".
В редакторе:
- Добавлены функции "вырезать/скопировать/вставить".
- Автоматический отступ.
- Теперь спрашивает о необходимости перезаписи уже существующего файла
с таким же названием.
- Вся документация была обновлена, теперь на трех языках!
- Исправлены некоторые ошибки работы с памятью.
V1.30 (24.01.2000):
В компиляторе:
- Теперь ваши программы будут занимать меньший объем!
- Операнды сравнения обращаемыми (<= или =< и >= или =>).
- Нераспознаные операторы выделяются.
- Заработали программы, компилируемые для PowerPC (Смотрите примеры в
каталоге PPC_Example).
- Убрано множество бесполезных библиотек для PowerPC.
- Теперь можно использовать ASCII символы для определения констант:
"value = 'A'" тоже самое что и "value = 65".
- Завершена система поддержки процедур. Они могу принимать строки как
входные параметры и возвращать их в качестве выходных результатов.
- Можно опускать "=" в выражениях: "a+1" это совершенно тоже самое что
"a=a+1". Может быть использовано при любых вычислениях с любыми
типами данных.
- Завершена работа по внедрению поддержки операционной системы.
- Компилятор почти полностью переписан, благодаря чему теперь процесс
компиляции значительно ускорился.
- Ускорена процедура обработки оператора "include".
- Сокращено количество памяти, требующееся для работы, "PoolMem" более не
нужен.
- Исправлено множество ранее замеченных ошибок.
В библиотеках:
- Добавлена новая библиотека для работы с чанками и очень быстрая
процедура "chunky2planar".
- Оптимизация в библиотеке поддержки связных списков.
- Новые команды: FindString(), ChangeCurrentElement().
- Исправления в следующих командах: Mid(), StripLead(), InitScreen(),
InitTagList(), BusyPointer() и ActivateGadget().
- Переименованы команда: DPrint() -> PrintText().
- Обновлено руководство.
В редакторе:
- Добавлены Boopsi-слайдеры.
- Добавлен пункт "NoCli Output".
- Теперь можно сохранять настройки каждого файла.
- Исправлено несколько ошибок.
V1.20 (30.11.1999):
- Появился встроенный редактор!
- Вы можете использовать любые библиотеки AmigaOS непосредственно из
ваших программ на PureBasic! Никаких ограничений нет. Можно добавить
нужные библиотеки с помощью прилагающегося преобразователя.
- Добавлено три новые библиотеки: Amiga, Sound и Sort.
- Добавлено много новых функций:
- LinkedList: ClearList(), PreviousElement(), InsertElement()
- File : MakeDirectory(), RenameFile(), DeleteFile(), WriteStringN()
- Window : ChangeIDCMP(), BevelBox()
- String : Mid(), Val(), FindString(),StripTrail(), StripHead()
- Misc : PrintNumberN(), Peek(), Poke()
- Внимание! Следующие функции были переименованы:
NPrint() -> PrintN()
PrintNum() -> PrintNumber()
WriteString -> Более не выдает терминатор в конце строки.
Используйте WriteStringN(), если он нужен.
- Изменение: для получения адреса метки теперь следует использовать
символ '?', вместо ранее использовавшегося символа '@'.
- Отладчик обновлен и исправлен. Теперь он намного лучше.
- Дополнено руководство о создании собственных библиотек функций. Стало
еще проще :)
- Некоторые функции подверглись изменениям с целью их оптимизации.
- Исправлено множество ранее замеченных ошибок.
V1.10 (27.10.1999):
- Добавлены три новые библиотеки: Commodity, ToolsType и String.
- Теперь файл загружается значительно быстрее.
- Поддержка немецкого и французского языков.
- Исправлено множество ранее замеченных ошибок (как всегда).
- Улучшена поддержка PowerPC, но она еще далека от завершения.
- Добавлен плагин для редактора GoldED, которые теперь выделяет цветом
операторы PureBasic. Автор - Julian Kinraid.
- Собственный редактор написан на 50 процентов.
- Исправлена структура архивного файла, добавлен скрипт-инсталлятор.
- И другое.
V1.02 (12.09.1999):
- Забыл добавить два файла для компилятора PowerPC. Теперь все должно
работать :)
- Исправлены замеченные ошибки.
- Добавлено руководство "Reference.guide" исправленное LES'ом. Большое
спасибо ему за помощь.
V1.01 (05.09.1999):
- Создан первый вариант компилятора PowerPC для WarpOS. Однако он все
еще находится в стадии разработки.
- Добавлено основное руководство (вот этот файл), ошибки исправил LES.
Большое ему за это спасибо!
V1.00 (01.09.1999):
- Самая первая версия.
Сайт создан в системе
uCoz