Для UnrealSpeccy свой формат. Смотрите директиву в документации: LABELSLIST
Вид для печати
Собрал sjasmplus под линух.
вроде работает. НО!
При попытке использовать директиву MODULE - вылетает по segfault.
Кто такое видел, пробовал исправить?
Какой версией gcc собирали и сколько-разрядная система?
Последний раз, тестируя под Линукс, прекрасно собрал на sjasmplus свои Numb Cars 2 и SquareMania из исходников, где часто используется директива MODULE, поэтому идей пока нету - но очевидно, что где-то ошибка в программе.
Не знаю, может уже где писалось, но у меня изкаропки SjAsmPlus под линухом не собирается. Проблема в неподключаемом stdlib.h. Решил так:
А при сборке асмовского файла у меня тоже segfault... Насчет этого я покопаюсь...Код:--- sjasm/sjdefs_.h 2008-04-01 17:41:58.000000000 +0400
+++ sjasm/sjdefs.h 2010-07-12 10:52:03.055463053 +0400
@@ -68,9 +68,7 @@
using std::flush;
using std::stack;
#include <stdio.h>
-#ifdef WIN32
#include <stdlib.h>
-#endif
#include <string.h>
#include <ctype.h>
#include <math.h>
---------- Post added at 12:12 ---------- Previous post was at 10:59 ----------
Нашел место вылета (sjasm/tables.cpp):
На strdup'е собственно и валится (nstring = NULL).Код:CStringsList::CStringsList(char* nstring, CStringsList* nnext) {
string = STRDUP(nstring);
//if (string == NULL) {
// Error("No enough memory!", 0, FATAL);
//}
next = nnext;
}
Сделал так:
Вроде даже работает :DКод:CStringsList::CStringsList(char* nstring, CStringsList* nnext) {
if ( nstring )
string = STRDUP(nstring);
else
string = NULL;
//if (string == NULL) {
// Error("No enough memory!", 0, FATAL);
//}
next = nnext;
}
molodcov_alex, спасибо. Скоро, думаю, прибить проект на SourceForge.net вместе с сайтом и перенести все на GitHub.com, чтобы любой желающий мог сделать свою ветку и модернизировать и усовершенствовать компилятор самостоятельно.
А можно примерчик использования структур, а то чёта в инструкции не очень понял.
И желательно поподробней объяснить зачем эти структуры нужны.
Хотелось бы отписать о косяке компилятора и надеяться на быстрое исправление если возможно. Вот картинка. В логе все нормально, но декомпиленный бинарик уже отличается. Обвел красной рамкой.
Версия естественно последняя.