Board.KolibriOS.org
http://board.kolibrios.org/

Pascal Pro для KolibriOS
http://board.kolibrios.org/viewtopic.php?f=9&t=2353
Page 1 of 2

Author:  re0ne [ Tue Jul 02, 2013 10:55 am ]
Post subject:  Pascal Pro для KolibriOS

Несколько дней назад искал упоминающийся на форуме компилятор Pascal Pro для KolibriOS. Нашел вот здесь. Выкладываю модифицированную версию. Внесенные изменения:
  • Поддержка модификатора доступа protected для объектов.
  • Компилятор сам добавляет имя модуля к именам локальных меток, созданных из Pascal-кода. Теперь фиктивный TASM32, который делал ту же работу, не нужен.
  • Выкинуто лишние из файла настройки трансляции PPRO.SRC.
  • Исправления KOLIBRI.PAS и TEST.PAS. В основном оформление кода.


Attachments:
kolibrios_ppro.zip [353.59 KiB]
Downloaded 371 times

Author:  ramiil-kun [ Sun Jul 07, 2013 4:57 pm ]
Post subject:  Re: Pascal Pro для KolibriOS

Поясни, PascalPro доступен в исходниках, и может быть скомпилирован в 32bit EXE?

Author:  Akyltist [ Sun Jul 07, 2013 6:28 pm ]
Post subject:  Re: Pascal Pro для KolibriOS

да

Author:  re0ne [ Mon Jul 08, 2013 11:08 am ]
Post subject:  Re: Pascal Pro для KolibriOS

Да. Но придется написать/адаптировать RTL под Win32. В комплекте под 32-битные расширители DOS.

Author:  ramiil-kun [ Mon Jul 08, 2013 1:37 pm ]
Post subject:  Re: Pascal Pro для KolibriOS

Кинь сырцы, очень уж охота поизвращаться.

Author:  re0ne [ Mon Jul 08, 2013 6:38 pm ]
Post subject:  Re: Pascal Pro для KolibriOS

Вот в таком виде распространял Pascal Pro автор. Собрать можно с помощью Borland Pascal или самим Pascal Pro (будут нужны дополнительные утилиты, смотреть в PPRO.SRC).

Attachments:
File comment: Исходные коды компилятора
pprosrc01.zip [140.6 KiB]
Downloaded 274 times
File comment: Компилятор
ppro01.zip [267.57 KiB]
Downloaded 264 times
File comment: Исходные коды RTL
pprortl01.zip [81.49 KiB]
Downloaded 270 times

Author:  ramiil-kun [ Mon Jul 08, 2013 7:43 pm ]
Post subject:  Re: Pascal Pro для KolibriOS

wait, я имел ввиду сам компилятор:) При попытке запустить PPRO.EXE или PPROC.EXE в x64 винде ничего не произойдёт, что прискорбно.

Author:  re0ne [ Mon Jul 08, 2013 10:22 pm ]
Post subject:  Re: Pascal Pro для KolibriOS

ramiil-kun wrote:
При попытке запустить PPRO.EXE или PPROC.EXE в x64 винде ничего не произойдёт, что прискорбно.

Именно так. Даже будучи собранным самим собой он содержит немного 16-битного кода, использует функции DOS и DPMI. Обновил предыдущее сообщение, добавил исходники и оригинальные бинари компилятора.

Author:  mozGa_net [ Wed Jul 10, 2013 9:47 pm ]
Post subject:  Re: Pascal Pro для KolibriOS

Может кто мне объяснит, как с PPro библиотеку грузануть?

Author:  re0ne [ Thu Jul 11, 2013 12:10 pm ]
Post subject:  Re: Pascal Pro для KolibriOS

Какую библиотеку? В какой ОС?

Author:  mozGa_net [ Thu Jul 11, 2013 1:00 pm ]
Post subject:  Re: Pascal Pro для KolibriOS

Допустим box_lib, допустим в КОлибри

Author:  SoUrcerer [ Thu Jul 11, 2013 1:04 pm ]
Post subject:  Re: Pascal Pro для KolibriOS

Берем inline assembler и загружаем.

Author:  mozGa_net [ Thu Jul 11, 2013 1:34 pm ]
Post subject:  Re: Pascal Pro для KolibriOS

Я как полный слоупок со всей присущей мне отвественностью заявляю, что без прмера ничего не пойму :roll:

Author:  SoUrcerer [ Thu Jul 11, 2013 2:04 pm ]
Post subject:  Re: Pascal Pro для KolibriOS

Я не пользовался PPro уже давно, и не помню, что и как там делается. Но там наверняка есть возможность ассемблерных вставок.
Загрузка библиотек на примере C-- делается так: http://websvn.kolibrios.org/filedetails ... ib%2Fdll.h

Author:  re0ne [ Thu Jul 11, 2013 11:04 pm ]
Post subject:  Re: Pascal Pro для KolibriOS

В комплекте с PPro для KolibriOS лежит модуль LOADPE.PAS (интерфейсный, реализация в PE.INC), который можно использовать для загрузки DLL.
Code:
function LoadLibrary(Name: string): DWord;
function FreeLibrary(Handle: DWord): DWord;
function GetProcAddress(Handle: DWord; Name: string): DWord;
function GetCountLoadModule: DWord;
function GetNameModule(num: DWord): string;
function GetAddrModule(num: DWord): DWord;
function GetSlotModule(num: DWord): DWord;

Page 1 of 2 All times are UTC+03:00
Powered by phpBB® Forum Software © phpBB Limited
https://www.phpbb.com/