В чем предполагаемый смысл данной конструкции? Чтоб второй параметр макроса был опциональным? (но "IF reg_hl" эквивалентно "IF (reg_hl != 0)")
Вид для печати
во1х, да, смысл именно такой, только чтобы любой аргумент был опциональным. Аргумент может быть пустым. Есть и более сложные варианты. Как пример, движок wolf48, там алоний напрудил с макросами какую-то лютость. которую ужасм не переваривает. Хотя уже есть вариант, где макросы удалены, но хотелось бы видеть в работе макросы с условиями, которых сейчас нет.
во2х, все эти варианты я пару лет назад пробовал - ошибки компиляции.
А в будущем планируется добавить расширенный набор команд Next ?
Он нужен?
Тогда будет.
Лучше всего сюда записать реквест, чтоб не потерялось: https://github.com/sjasmplus/sjasmplus/issues
[QUOTE]Он нужен?
Тогда будет. /QUOTE]
Вот когда будет опенсорс - тогда может и нужен, а в таком виде - нет. Одни завтраки
Есть прекрасный эмулятор 6502. Для него даже есть набор инструкций 65816.
К чему это я?
к тому, что можно решить такую проблему.
Закрыл фича-реквест на гитхабе по-поводу добавления системной переменной для определения ОС на которой запускается эмулятор. Что бы, например, изменять пути к подгружаемым файлам. Сначала я согласился с тем, что можно использовать пути в параметрах запуска самого компилятора через -i. Это да, здорово, когда названия всех файлов уникальны, а что делать если названия будут совпадать? Так или иначе, не всегда бывает удобно держать все названия файлов уникальными, поэтому все-таки переменная отражающая ОС компилятора была бы все-таки полезна.
Ответил.
- - - Добавлено - - -
Просьба к пользователям sjasmplus прокомментировать вопросы:
Вопросы над которыми надо подумать всвязи с этим:Цитата:
Сообщение от asve79
1. Синтаксис ключа командной строки и директивы. На данный момент включение перекодировки (cp1251->cp866) сделано довольно странно. См. документацию по директиве ENCODING и ключу --dos866.
2. Стоит ли делать автодект кириллицы в UTF8 и ПО УМОЛЧАНИЮ перекодировать ее в cp866? (в этом случае, естественно д.б. опция для отключения этой функции)
3. Нужно ли определять BOM, насколько это распространено/используется?
ну encoding на вид
именно когда нам нужно получить строку из байтов для самого спектрумовского кода в нужной кодировке
там же и примеры кода с DB
а для чего
--dos866
нужно проверить все 4 комбинации и глянуть для чего они изначально задумівались
- - - Добавлено - - -
Если так делать
то при компиляции нужно обязательно вывести
что произведена перекодировка
чтоб не наступать ВНЕЗАПНО на грабли
- - - Добавлено - - -
компилит такЦитата:
ENCODING "WIN"
db "абвг"
ENCODING "DOS"
db "абвг"
но в какой кодировке должен быть сам исходник по идеи должно быть все равно (нужно чтоб было)Цитата:
E0 E1 E2 E3
A0 A1 A2 A3
без dos866
Цитата:
db "абвг"
db "абвг"
с включенным --dos866Цитата:
E0 E1 E2 E3
E0 E1 E2 E3
Цитата:
db "абвг"
db "абвг"
тоесть --dos866 нуженЦитата:
A0 A1 A2 A3
A0 A1 A2 A3
чтоб поменять кодировку всех текстовых строк
кодировка которіх не указана
если кодировка стоит
--dos866 ничего не меняет
то есть при --dos866
компилит так жеЦитата:
ENCODING "WIN"
db "абвг"
ENCODING "DOS"
db "абвг"
Цитата:
E0 E1 E2 E3
A0 A1 A2 A3
а вопрос видимо про то что сорец нужно переваривать в любом формате
написанном в любом блокноте от виндовс15
возможно он просто хочет поддержкуЦитата:
но в настоящее время все больше систем используют UTF-8,
ENCODING "UTF-8"
если так
то это только опционально через
--utf8 или ENCODING "UTF-8"
пушо может легко накрытся обратная совместимость
тк по дефолту другая кодировка всегда была...
забавный косяк год назад обнаружил, у чехов то же самое.
надеюсь на первый взгляд ничего предосудительного ?))Код:ex af, af' :ex af, af'