- Saved searches
- Use saved searches to filter your results more quickly
- pappscalle/turbo-dev
- Name already in use
- Sign In Required
- Launching GitHub Desktop
- Launching GitHub Desktop
- Launching Xcode
- Launching Visual Studio Code
- Latest commit
- Git stats
- Files
- README.md
- About
- Практикум по Паскалю
- Известные проблемы и методы их решения
- Регистр букв в именах файлов
- Полноэкранный режим BP
- Работа с Free Pascal
- Работа с GNU Pascal
- Как установить Turbo Pascal на Linux?
- 3 ответа 3
- Re: pascal в linux
- Re: pascal в linux
- Re: pascal в linux
- Re: pascal в linux
- Re: pascal в linux
- Re: pascal в linux
- Re: pascal в linux
- Re: pascal в linux
- Re: pascal в linux
- Re: pascal в linux
- Re: pascal в linux
Saved searches
Use saved searches to filter your results more quickly
You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session.
A quick tutorial on how to setup Turbo Pascal for retro-inspired development in Ubuntu
pappscalle/turbo-dev
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Name already in use
A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Sign In Required
Please sign in to use Codespaces.
Launching GitHub Desktop
If nothing happens, download GitHub Desktop and try again.
Launching GitHub Desktop
If nothing happens, download GitHub Desktop and try again.
Launching Xcode
If nothing happens, download Xcode and try again.
Launching Visual Studio Code
Your codespace will open once ready.
There was a problem preparing your codespace, please try again.
Latest commit
Git stats
Files
Failed to load latest commit information.
README.md
A «quick» tutorial on how to setup Turbo Pascal in Ubuntu so you can code like it’s ’93.
- Turbo Pascal 7 (or other version)
- 7-Zip for extractinng Turbo Pascal installation files (Optional)
- DOSBox or preferrably DOSBox-X. DOSBox-X has much better support for demos (ie Goldplay works as intended)
- DOSEMU2
- Somewhere to place DOS programs e.g. ~/msdos
- Somewhere to place your own source code e.g. ~/code/pascal
~$ sudo snap install dosbox-x
Download Borland Turbo Pascal 7.0 (1992) (3.5-720k).7z to a temporary dirctory e.g ~/msdos/tmp Extract the file using 7-Zip. If 7-Zip isn’t available, install it first.
~$ sudo apt install p7zip-full ~$ cd ~/msdos/tmp ~/tmp$ 7za x 'Borland Turbo Pascal 7.0 (1992) (3.5-720k).7z'
Mount each file image (right-click and run them with the Disk Image Mounter program) Exatract each image Disk001.img , Disk002.img , Disk003.img , Disk004.img into a directory e.g ~/msdos/tmp Run DOSBox
in DOSBox, mount the temporary directory where the Turbo Pascal files a extrected, and the run the Turbo Pascal installer
Z:\>mount c: . Z:\>c: Z:\>cd tmp Z:\TMP\> install.exe
Install turbo pascal in a directory e.g c:\apps\tp7 ( ~/msdos/apps/tp7 ) (and with the *.exe files in c:\apps\tp7\bin ) Exit DOSBox
On eg Ubuntu 20.04+ run the following to install DOSEMU2
sudo add-apt-repository ppa:dosemu2/ppa sudo apt update sudo apt install dosemu2
Go to the DOSEMU home folder:
If the folder doesn’t exist, run DOSEMU once to create the DOSEMU home folder, and the exit DOSEMU by typing «exit»
Create a soft link to the Turbo Pascal installation
~/.dosemu/drive_c$ ln -s ~/msdos/apps/tp7 tp7
~/.dosemu/drive_c$ ls -la autoexec.bat config.sys tmp tp7 -> /home/youruser/msdos/apps/tp7
For DOSEMU2, creata a file called userhook.bat and include TP7 to the path
~/.dosemu/drive_c$ nano userhook.bat
Add c:\tp7\bin at the end of the path
Check out the example code in any folder e.g ~/code/pascal/turbo-dev
Go to the source folder and compile a Pascal file from the command line:
~$ cd /code/pascal/turbo-dev/ ~$ dosemu -E build.bat -K . -dumb
will hopefully result in something like
D:\code\pascal\turbo-dev\src>TPC pixels.pas -B Turbo Pascal Version 7.0 Copyright (c) 1983,92 Borland International PIXELS.PAS(170) 567 lines, 6624 bytes code, 5192 bytes data.
Run the pixels.exe file with DOSBox
About
A quick tutorial on how to setup Turbo Pascal for retro-inspired development in Ubuntu
Практикум по Паскалю
Среда Borland Pascal разрабатывалась под ОС, которой уже нет и под процессор, которого тоже уже нет. Как результат — на современных потомках той OC, работающих на современных процессорах эта система может и не работать. Для решения проблемы лучше использовать эмулятор, рекомендуется — DosBox. Таким образом, чтобы работать в системе Borland Pascal в классе практикума, надо запустить этот эмулятор.
На данный момент (2016 год) выяснено, что в современных Windows в среде Borland Pascal, запущенной в эмуляторе, невозможно использовать мышь. Поэтому не остаётся иного выбора, кроме как использовать для работы в среде Unix-системы.
В настоящее время готова сборка BP для GNU/Linux, автоматически запускающая Borland Pascal в эмуляторе DOSBox (или предоставляющая нативный доступ к компилятору bpc из Unix-терминала, в зависимости от необходимости). Её исходные коды доступны на GitHub, а сам BP можно взять здесь.
Запустить можно через интерфейс командной строки (надо ввести в терминале turbopascal ). В качестве корня «диска с исходниками» среда подцепит текущую директорию, в которой была запущена (по умолчанию — домашняя папка).
Как следует из названия эмулятора, запустится система DOS в «коробке», а в ней — сама среда.
Окно эмулятора можно расширить на полный экран нажатием Alt+Enter
Переключение между языками в DOS — по нажатию правой клавиши Alt .
Известные проблемы и методы их решения
Регистр букв в именах файлов
Все файлы, создаваемые изнутри Borland Pascal вместо строчных букв используют заглавные, даже если попытаться указать среде имя файла со строчными буквами. Это происходит потому, что файловые системы, используемые в Unix-подобных ОС, традиционно чувствительны к регистру букв (различают строчные и прописные буквы в именах файлов). В MS-DOS (и, следовательно, в Windows) такого различия нет.
Полноэкранный режим BP
При работе в классе окно Borland Pascal занимает большую часть экрана, но всё-таки не целиком. Это связано с ограничениями видеодрайвера используемого гипервизора VirtualBox. При запуске BP в нативной (не виртуализованной) системе проблема не проявляется (эмулятору DOSBox удаётся правильно выставить режимы работы монитора).
- Создаёте файл .pas с исходным кодом, пишете код.
- Запускаете BP.
- F3 -> выбираете ваш файл.
- Запускаете ( Ctrl-F9 или меню Compile -> Run в среде Borland Pascal)
- По Alt-F5 (или Debug -> User screen ) любуетесь результатом в консоли.
- При необходимости исправляете код в редакторе, в DOSBox жмёте Ctrl-F4 , чтобы тот увидел изменения на диске и идёте к шагу 3.
Работа с Free Pascal
Free Pascal — это современная и поддерживаемая в настоящий момент среда разработки для языка Pascal. Совместима с Borland Pascal. Наряду с этим есть Lazarus — аналог Delphi.
Изначально многие методички считают, что Вы работаете в Borland Pascal, поэтому Free Pascal в компьютерных классах изначально настроен на совместимость с этой системой. Т.е.: поведение, размеры типов, трактовка функций-переменных и т.д. совпадает. На текущий момент не найдена программа, поведение которой различалось бы в BP и FP.
Работа с GNU Pascal
- В каком-нибудь (любом) редакторе набираете текст программы и сохраняете (например, под именем a.pas);
- В терминале говорите gpc a.pas
- Если есть ошибки — возвращаетесь к редактору в пункте 1.
- Иначе запускаете программу (./a.out)
Как установить Turbo Pascal на Linux?
Пытался установить TP7 на школьный Линукс. Сразу же скачал эмулятор dosbox. Если скачиваешь *.exe. Wine грузит его и грузит, но в конце концов он просто прекращает загрузку dosbox’а. Скачивал архивы для Линукса, а там не понятно как им пользоватся, как установить его и т.п. Народ кто знает что делать подскажите пожалуйста.
3 ответа 3
Поставьте FreePascal это бесплатный аналог для линукса
Я в целом присоединяюсь к тем, кто посоветовал поставить FreePascal. Это хороший компилятор. Да и в родной среде конечно же лучше работать, чем на эмуляторе.
Однако если Ваш преподаватель упорно требует именно Turbo Pascal (а я такое в принципе допускаю), позволю себе маленькое замечание. По Вашему лаконичному сообщению и упоминанию Wine я заподозрил, что Вы пытаетесь скачать DOSBox для Windows и запустить его под Wine, то есть эмулятор под эмулятором. Делать этого совершенно не нужно — для линукса есть «родная» версия DOSBox, а также ещё один эмулятор — DOSEmu. Под ними и надо запускать ДОСовские программы. Wine здесь не нужен, он для другого.
Говоря про «школьный Линукс», Вы имеете в виду Альт Линукс 5.0 Школьный? Или что-то ещё?
Скачивал архивы для Линукса, а там не понятно как им пользоватся, как установить его и т.п.
А! Этого сразу не заметил. Архивы DOSBox-а имеются в виду, я так полагаю? Ну тогда надо уточнять, какой именно архив Вы качали — исходники в tar.bz2 или что-то ещё. И в зависимости от этого двигаться дальше. Но в любом случае это — правильный путь. А запускать виндовую версию DOSBox в wine — ложный.
Re: pascal в linux
А поставить dosbox/dosemu и там запустить старый добрый Borland-овский паскаль совсем не айс?
Re: pascal в linux
Re: pascal в linux
>>А поставить dosbox/dosemu и там запустить старый добрый Borland-овский паскаль совсем не айс?
можно поподробнее? Я совсем новичек.
Re: pascal в linux
А гланды через жопу удалять не айс?
Re: pascal в linux
Re: pascal в linux
А что подробнее? Ставишь dosbox или dosemu — и пользуешься.
Re: pascal в linux
Еще вопрос, не в тему конечно, но просто, да или нет.
Можно ли на паскале написать 3-d шутер?
Re: pascal в linux
>А смысл в совместимости.
>Free Pascal Compiler (FPC) — это свободно распространяемый компилятор языка Паскаль с открытыми исходными кодами. Он совместим с Borland Pascal 7
Re: pascal в linux
> Можно ли на паскале написать 3-d шутер?
Re: pascal в linux
>Free Pascal Compiler (FPC) — это свободно распространяемый компилятор языка Паскаль с открытыми исходными кодами. Он совместим с Borland Pascal 7
Он то с BP7 может и совместим, а вот наоборот — точно нет. Есть далеко не малая вероятность того, что программа, нормально собирающаяся FPC, BP7 не соберётся.
А на лабах, я так полагаю, будут именно сорцы BP7 собирать.
Re: pascal в linux
>Можно ли на паскале написать 3-d шутер?