Форум по Delphi программированию



Вернуться   Форум по Delphi программированию > Прочие языки программирования > Assembler
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #16  
Старый 06.10.2012, 23:25
Аватар для SCrat.ORS
SCrat.ORS SCrat.ORS вне форума
Активный
 
Регистрация: 20.02.2007
Адрес: Мой адрес не дом и не улица, мой адрес 0x7С00
Сообщения: 208
Версия Delphi: 2006
Репутация: 884
По умолчанию

АСМ установлен в c:\masm32\
все файлы программы лежат в
d:\DELPHISOURCES\CapsSwitch\asm\
mythread.asm
capswitch.inc
capswitch.asm
make.bat

Код:
@echo off

set path=c:\;c:\masm32;%PATH%
set include=c:\masm32\include
set lib=c:\masm32\lib

if exist *.obj del *.obj
if exist *.log del *.log

ml /c /coff capswitch.asm >>capswitch.log
if errorlevel 1 goto end

link /SUBSYSTEM:WINDOWS capswitch.obj>>capswitch.log
if errorlevel 1 goto end

if exist *.obj del *.obj

:end

Запускаю батник, появляется ЛОГ пустой и всё
__________________
Програмистами не рождаются, ими становятся!
Ответить с цитированием
  #17  
Старый 06.10.2012, 23:28
Аватар для angvelem
angvelem angvelem вне форума
.
 
Регистрация: 18.05.2011
Адрес: Омск
Сообщения: 3,970
Версия Delphi: 3,5,7,10,12,XE2
Репутация: выкл
По умолчанию

Совсем пустым быть не должен.
Цитата:
Assembling: capswitch.asm

***********
ASCII build
***********

Microsoft (R) Incremental Linker Version 5.12.8078
Copyright (C) Microsoft Corp 1992-1998. All rights reserved.
что-то типа этого.
__________________
Je venus de nulle part
55.026263 с.ш., 73.397636 в.д.
Ответить с цитированием
  #18  
Старый 06.10.2012, 23:36
Аватар для SCrat.ORS
SCrat.ORS SCrat.ORS вне форума
Активный
 
Регистрация: 20.02.2007
Адрес: Мой адрес не дом и не улица, мой адрес 0x7С00
Сообщения: 208
Версия Delphi: 2006
Репутация: 884
По умолчанию

разобрался,..пути дописал

в батнике
Код:
c:\masm32\bin\ml /c /coff capswitch.asm >>capswitch.log
if errorlevel 1 goto end

c:\masm32\bin\link /SUBSYSTEM:WINDOWS capswitch.obj>>capswitch.log
if errorlevel 1 goto end

и capswitch.inc
Код:
  include c:\masm32\include\windows.inc
  include c:\masm32\include\masm32.inc
  include c:\masm32\include\user32.inc
  include c:\masm32\include\kernel32.inc
  include c:\masm32\macros\macros.asm         ; masm32 macro file

  includelib c:\masm32\lib\masm32.lib
  includelib c:\masm32\lib\user32.lib
  includelib c:\masm32\lib\kernel32.lib
__________________
Програмистами не рождаются, ими становятся!
Ответить с цитированием
  #19  
Старый 06.10.2012, 23:42
Аватар для SCrat.ORS
SCrat.ORS SCrat.ORS вне форума
Активный
 
Регистрация: 20.02.2007
Адрес: Мой адрес не дом и не улица, мой адрес 0x7С00
Сообщения: 208
Версия Delphi: 2006
Репутация: 884
По умолчанию

Собрал, все супер!

Скачать все тут

размер ЕХЕ забавный получился,.. 4096 байт
__________________
Програмистами не рождаются, ими становятся!

Последний раз редактировалось SCrat.ORS, 07.10.2012 в 00:03.
Ответить с цитированием
  #20  
Старый 06.10.2012, 23:45
Аватар для angvelem
angvelem angvelem вне форума
.
 
Регистрация: 18.05.2011
Адрес: Омск
Сообщения: 3,970
Версия Delphi: 3,5,7,10,12,XE2
Репутация: выкл
По умолчанию

Ясно, ты забыл прочитать как устанавливать MASM. Там ещё после его установки нужно прописать путь окружения. Когда пропишишь, в bat-нике достаточно будет написать
Цитата:
ml /c /coff capswitch.asm
link /SUBSYSTEM:WINDOWS capswitch.obj
я же говорил, мне приходится писать в bat-нике пути из-за С++ Builder-а.

MASM округляет до блока 256. Хочешь ещё меньше, найди polink.exe.
__________________
Je venus de nulle part
55.026263 с.ш., 73.397636 в.д.

Последний раз редактировалось angvelem, 06.10.2012 в 23:50.
Ответить с цитированием
  #21  
Старый 06.10.2012, 23:58
Аватар для SCrat.ORS
SCrat.ORS SCrat.ORS вне форума
Активный
 
Регистрация: 20.02.2007
Адрес: Мой адрес не дом и не улица, мой адрес 0x7С00
Сообщения: 208
Версия Delphi: 2006
Репутация: 884
По умолчанию

поищу,.. но что-то пока не густо
__________________
Програмистами не рождаются, ими становятся!
Ответить с цитированием
  #22  
Старый 07.10.2012, 00:11
Аватар для Bargest
Bargest Bargest вне форума
Профессионал
 
Регистрация: 19.10.2010
Адрес: Москва
Сообщения: 2,390
Версия Delphi: XE3/VS12/FASM
Репутация: 14665
По умолчанию

Еще меньше? Ну можно конечно постараться... Только все равно: заголовок PE вроде около 512 байт, + код, + данные, + импорт, + выравнивание... Меньше 2кб, думаю, не выйдет. А 2 и 4 кб в большинстве файловых систем занимают одинаковое количество места - 1 кластер.
__________________
jmp $ ; Happy End!
The Cake Is A Lie.
Ответить с цитированием
  #23  
Старый 07.10.2012, 00:12
Аватар для angvelem
angvelem angvelem вне форума
.
 
Регистрация: 18.05.2011
Адрес: Омск
Сообщения: 3,970
Версия Delphi: 3,5,7,10,12,XE2
Репутация: выкл
По умолчанию

Можно и меньше, если посмотреть код то он совсем не оптимизирован. Только и смысла в этом мало.
А кстати, в коде имеется ошибка, кто найдёт?
__________________
Je venus de nulle part
55.026263 с.ш., 73.397636 в.д.

Последний раз редактировалось angvelem, 07.10.2012 в 00:20.
Ответить с цитированием
  #24  
Старый 07.10.2012, 00:26
Аватар для SCrat.ORS
SCrat.ORS SCrat.ORS вне форума
Активный
 
Регистрация: 20.02.2007
Адрес: Мой адрес не дом и не улица, мой адрес 0x7С00
Сообщения: 208
Версия Delphi: 2006
Репутация: 884
По умолчанию

2560 вышло

Мне дак ошибку не найти =) я не асмер =)
__________________
Програмистами не рождаются, ими становятся!
Ответить с цитированием
  #25  
Старый 07.10.2012, 00:27
Аватар для angvelem
angvelem angvelem вне форума
.
 
Регистрация: 18.05.2011
Адрес: Омск
Сообщения: 3,970
Версия Delphi: 3,5,7,10,12,XE2
Репутация: выкл
По умолчанию

Точно, значит нашёл polink?

А никто им не рождается.
__________________
Je venus de nulle part
55.026263 с.ш., 73.397636 в.д.
Ответить с цитированием
  #26  
Старый 07.10.2012, 00:29
Аватар для SCrat.ORS
SCrat.ORS SCrat.ORS вне форума
Активный
 
Регистрация: 20.02.2007
Адрес: Мой адрес не дом и не улица, мой адрес 0x7С00
Сообщения: 208
Версия Delphi: 2006
Репутация: 884
По умолчанию

Цитата:
Сообщение от angvelem
Точно, значит нашёл polink?

он оказалось в комплекте масма был
__________________
Програмистами не рождаются, ими становятся!
Ответить с цитированием
  #27  
Старый 07.10.2012, 00:35
Аватар для angvelem
angvelem angvelem вне форума
.
 
Регистрация: 18.05.2011
Адрес: Омск
Сообщения: 3,970
Версия Delphi: 3,5,7,10,12,XE2
Репутация: выкл
По умолчанию

Я собрал в 2140 используя ulink.exe. В комплекте не идёт.

Цитата:
2. Очередные билды можно брать с
ftp://ftp.styx.cabel.net/pub/UniLink/
__________________
Je venus de nulle part
55.026263 с.ш., 73.397636 в.д.
Ответить с цитированием
  #28  
Старый 07.10.2012, 00:36
Аватар для SCrat.ORS
SCrat.ORS SCrat.ORS вне форума
Активный
 
Регистрация: 20.02.2007
Адрес: Мой адрес не дом и не улица, мой адрес 0x7С00
Сообщения: 208
Версия Delphi: 2006
Репутация: 884
По умолчанию

вот у меня получилось 2560, а почему его UPX не сжимает,.. неужто нечего сжимать
__________________
Програмистами не рождаются, ими становятся!
Ответить с цитированием
  #29  
Старый 07.10.2012, 00:37
Аватар для angvelem
angvelem angvelem вне форума
.
 
Регистрация: 18.05.2011
Адрес: Омск
Сообщения: 3,970
Версия Delphi: 3,5,7,10,12,XE2
Репутация: выкл
По умолчанию

polink уже убрал почти всё лишнее (не ужал).
__________________
Je venus de nulle part
55.026263 с.ш., 73.397636 в.д.
Ответить с цитированием
  #30  
Старый 07.10.2012, 00:41
Аватар для SCrat.ORS
SCrat.ORS SCrat.ORS вне форума
Активный
 
Регистрация: 20.02.2007
Адрес: Мой адрес не дом и не улица, мой адрес 0x7С00
Сообщения: 208
Версия Delphi: 2006
Репутация: 884
По умолчанию

а у меня говорит - invalid config file
__________________
Програмистами не рождаются, ими становятся!
Ответить с цитированием
Ответ



Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 09:55.


 

Сайт

Форум

FAQ

RSS лента

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2021

ВКонтакте   Facebook   Twitter   Ссылка на Telegram