LINUX.ORG.RU

Проект JWasm форкнут!

 , , jwasm,


0

2

Ввиду отсутствия развития, поддержки, а также недоступности ресурсов JWasm в последнее время, нами ( XVilka, i82) было принято решение о создании форка этого проекта.

JWasm представляет собой свободную реализацию MASM-совместимого x86-ассемблера, способного генерировать код для 16, 32 и 64-битных платформ. JWasm является переписанным ассемблером Watcom/Wasm, поддерживающим создание объектных файлов для DOS, Windows, Linux, OS/2 и FreeBSD. Написанный на C, JWasm может использовать для сборки множество компиляторов (Open Watcom, MSVC, GCC).

JWasm распространяется под лицензией Sybase Open Watcom Public License, признанной открытой OSI, но несвободной FSF.

Желающие присоединиться к развитию проекта — welcome!

Страница на Github

Сайт проекта

Перемещено splinter из opensource

★★

Последнее исправление: Klymedy (всего исправлений: 4)
Ответ на: комментарий от SZT

Обязательно! У нас он есть, форкнутый с исправлениями.

i82 ★★
() автор топика

УУУИИИИИИИИИИИИИИИИИИИИИИИИИИИ!!!!!!!!!!!!!!!!!!

anonymous
()

Во-первых, проект лучше переименовать, чтобы отличать от оригинала и не иметь проблем с торговыми знаками (?). Во-вторых, что за лицензия такая и почему нельзя использовать нормальную?

Klymedy ★★★★★
()
Ответ на: комментарий от Klymedy

Лицензия досталась от оригинала, тут уж ничего не поделаешь.

XVilka ★★★★★
()

когда одобрять будем БЛЯТЬ????

anonymous
()

У меня бомбануло...

#define tolower(c) ((c >= 'A' && c <= 'Z') ? c | 0x20 : c )

mangle.c:30

  • Двойная эвалуация c, теперь нельзя делать tolower(*str++)
  • Преждевременная оптимизация: c | 0x20?
    c + 'a' - 'A'
  • Агрументы макросов берём в скобочки во избежание
  • Ну и понятно, что будет работать только для ASCII и EBCDIC.
#define tolower(c) ((c) >= 'A' && (c) <= 'Z' ? (c) + 'a' - 'A' : (c))

// Вам C99 же дал inline функции, пользуйтесь!

KennyMinigun ★★★★★
()
Ответ на: У меня бомбануло... от KennyMinigun

Ну вы прям эстет :) JWasm это куча legacy кода. Если есть проблемы - создавайте тикет на gh :)

i82 ★★
() автор топика
Ответ на: У меня бомбануло... от KennyMinigun

C99 проблематично использовать, так как требуется совместимость с MSVC. А так да, позор микрософту, что за 16 лет так и не осилил добавить поддержку стандарта. 16 лет!

XVilka ★★★★★
()
Ответ на: комментарий от XVilka

Можно ж плюсовым компилятором MSVC сишный код компилировать. Или неполная совместимость C++ с C не позволяет так сделать?

SZT ★★★★★
()
Ответ на: комментарий от SZT

g++ не понимает designated initializers, хотя clang++ понимает

anonymous
()
Ответ на: комментарий от anonymous

Для совместимости с MASM синтаксисом. Fasm, конечно, хорош, но у него нулевая переносимость - сам же на ассемблере написан.

XVilka ★★★★★
()
Ответ на: комментарий от uin

ассоциируется с джаваскриптом

Удваиваю. Первая мысль, которая возникла - про JS =)

Deleted
()

А что плохого в существующих ассемблерах, чтобы форкать и поддерживать легасёвое нечто?

Dark_SavanT ★★★★★
()
Ответ на: комментарий от Dark_SavanT

Особенность конкретно этого ассемблера заключается в том, что он совместим с ассемблером MASM по синтаксису. Видимо, дело в этом

SZT ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.