Спасибо конечно за беспокойство, но....
ВСЁ! С МЕНЯ ХВАТИТ! 150 или 1500 раз одно и тоже самое!
Фактически работающее тут только Фасм! И возможно будет ДАК!
Всё остальное на форуме можно выкинуть на мусорку!
DAK. Pascal (Delphi) => Fasm
Вот dll
Та блин... ну шо за фигня?! добавил DCC32.CFG и
DCC32.EXE потребовало еще SYSTEM.DCU - ну нашёл во 2-м дельфи, а далее вот такое:
D:\Test>Set Name=test
D:\Test>dcc32 -J test.pas
Delphi for Win32 Version 9.0 Copyright (c) 1983,96 Borland International
test.pas(1)
test.pas(167)
168 lines, 0.09 seconds, 339 bytes code, 20 bytes data.
D:\Test>link -edit test.obj
Microsoft (R) COFF Binary File Editor Version 5.12.8078
Copyright (C) Microsoft Corp 1992-1998. All rights reserved.
test.obj : warning LNK4033: converting object format from OMF to COFF
LINK : warning LNK4041: no edit options specified
D:\Test>ld -T LScript.x test.obj -o test.kex
D:\Test>objcopy -O binary -j .text -j .data -j .bss test.kex
D:\Test>pause
Для продолжения нажмите любую клавишу . . .
DCC32.EXE потребовало еще SYSTEM.DCU - ну нашёл во 2-м дельфи, а далее вот такое:
D:\Test>Set Name=test
D:\Test>dcc32 -J test.pas
Delphi for Win32 Version 9.0 Copyright (c) 1983,96 Borland International
test.pas(1)
test.pas(167)
168 lines, 0.09 seconds, 339 bytes code, 20 bytes data.
D:\Test>link -edit test.obj
Microsoft (R) COFF Binary File Editor Version 5.12.8078
Copyright (C) Microsoft Corp 1992-1998. All rights reserved.
test.obj : warning LNK4033: converting object format from OMF to COFF
LINK : warning LNK4041: no edit options specified
D:\Test>ld -T LScript.x test.obj -o test.kex
D:\Test>objcopy -O binary -j .text -j .data -j .bss test.kex
D:\Test>pause
Для продолжения нажмите любую клавишу . . .
Ну так оно у тебя же скомпилировалось. Test.kex появился? Запускается?
В общето, - ДА! Извиняюсь! Не обратил внимание, появился, запускается! Завтра это всё рассмотрю более внимательно!0CodErr wrote:Ну так оно у тебя же скомпилировалось. Test.kex появился? Запускается?
0CodErr, спасибо за внимание !
Меня просто сбили с толку две строки:
test.obj : warning LNK4033: converting object format from OMF to COFF
LINK : warning LNK4041: no edit options specified
подумал что ошибку выдало, сразу не вник в подробности!
test.obj : warning LNK4033: converting object format from OMF to COFF
LINK : warning LNK4041: no edit options specified
подумал что ошибку выдало, сразу не вник в подробности!
Судя по скриншоту, это Windows XP. Странно. Программа должна в ней работать. Вообще, это не моя программа, у нее есть свой сайт.ALEXS1983 wrote:
Выложил очередной концепт в своей теме. По моим оценкам, на доработку нужно всего 1-2 рабочих дня (10-16 часов), но у меня их пока нет. К тому же, работающий экспорт в MENUETxx не решит проблему полноценной разработки на Delphi: нужно еще System дорабатывать, чтобы был менеджер кучи и исключения... Всем пофиг.
Извиняюсь, что в этой теме. Обязательно ли было выравнивать .text?
Потом собираю так:Получается файл размером 432 байта, запускается и работает.
Я делаю така не так
потому что иначе получается файл размером 4108 байт, и запускаться он не хочет.
Serge, я вот так сейчас сделалSerge wrote:0CodErr
Стеки и секции .data и .bss лучше явно выравнивать. Желательно на 16 байт, стек минимум 4.
Spoiler:
Code: Select all
PATH_SIZE = 1024;
PARAMS_SIZE = 256;
STACK_SIZE = 256;
SECTIONS
{
.all : {
LONG(0x554e454D);
LONG(0x31305445);
LONG(1);
LONG("@Main");
LONG(END);
LONG(END + PATH_SIZE + PARAMS_SIZE + STACK_SIZE);
LONG(END + PATH_SIZE + PARAMS_SIZE + STACK_SIZE);
LONG(END + PATH_SIZE);
LONG(END);
. = ALIGN(16);
*(.text)
. = ALIGN(16);
*(.data)
. = ALIGN(16);
*(.bss)
. = ALIGN(16);
END = .;
}
}
Потом собираю так:
Code: Select all
dcc32 -J %Name%.pas
link -edit %Name%.obj
ld -T LScript.x %Name%.obj -o %Name%.kex
objcopy -O binary -j .all %Name%.kex
Я делаю так
Code: Select all
objcopy -O binary -j .all %Name%.kex
Code: Select all
objcopy -O binary %Name%.kex
Компилятор обычно выравнивает адреса функций и метки циклов. Так что смысл есть. Хотя не знаю, насколько это актуально для LD. Он должен брать выравнивание из атрибутов секций.Обязательно ли было выравнивать .text?
Может автор этой темы не видел, вот, кстати, Menuet Pascal Compiler viewtopic.php?f=45&t=112 Здесь архив viewtopic.php?f=45&t=112&start=15#p18910
Попробую еще этим позабавлятся....0CodErr wrote:Может автор этой темы не видел, вот, кстати, Menuet Pascal Compiler viewtopic.php?f=45&t=112 Здесь архив viewtopic.php?f=45&t=112&start=15#p18910
но думаю, что очередная фигня какая-то
mike.dld wrote:Типизация пока что отсутствует, операции над строками не поддерживаются, можно использовать только непосредственные операнды. Жаль, что в который раз приходится об этом говорить, но вот так оно пока и есть...
А с массивами что?! или нафиг они нужны, да ?! НЕ ПОНИМАЕТ МАССИВЫ ТО, НЕ ПОНИМАЕТ!0CodErr wrote:Может автор этой темы не видел, вот, кстати, Menuet Pascal Compiler viewtopic.php?f=45&t=112 Здесь архив viewtopic.php?f=45&t=112&start=15#p18910
0CodErr, а вот нафиг ты у меня в теме и мне пишешь и предлагаешь одно хуже другого ?!
Я уже писал:
ВСЁ! С МЕНЯ ХВАТИТ! 150 или 1500 раз одно и тоже самое!
Фактически работающее тут только Фасм! И возможно будет ДАК!
Всё остальное на форуме можно выкинуть на мусорку!
Почему не FreePascal, кстати?
Да уж, пропиетарный компилятор тут незачем.
Еще шото не рабочее или не полностью рабочее, да ? полуфабрикат который нельзя использовать ? Ну давай ссылку где это, пока в соответствующем настроении ?XVilka wrote:Почему не FreePascal, кстати?
Who is online
Users browsing this forum: No registered users and 3 guests