User Tag List

Страница 3 из 63 ПерваяПервая 1234567 ... ПоследняяПоследняя
Показано с 21 по 30 из 699

Тема: SjASMPlus от z00m

Комбинированный просмотр

Предыдущее сообщение Предыдущее сообщение   Следующее сообщение Следующее сообщение
  1. #1

    Регистрация
    10.05.2019
    Адрес
    Prague, Czech Republic
    Сообщений
    229
    Спасибо Благодарностей отдано 
    51
    Спасибо Благодарностей получено 
    103
    Поблагодарили
    77 сообщений
    Mentioned
    6 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от krt17 Посмотреть сообщение
    ...но теперь придется прибавлять <char>...
    ...Но нафига все эти извраты?
    1) not sure what is your issue, some example? (is it about doing few more keystrokes while writing source? That can be it, as that is usually very low priority for me, as that is usually very small part of SW development - compared to reading and debugging)

    2) why changes? Because v1.10.4 is too bugged and it's lacking some functions I need for my own projects.

    If you by some luck managed to have working source in older version - my respect! - you can still use the older binary to assemble that particular old source, if you don't want to update it.

    For new projects you can decide yourself, but I had huge issues with v1.10.4 when I tried to use it somewhat more, beyond trivial instruction assembling. More than half of the examples from documentation didn't work as it was described, and some features of sjasmplus were not described in documentation at all, so I was not even sure if those were bugs or secret features.

    But in the end it is very simple. I need assembler for my own projects, and my idea of good assembler is something reliable and predictable - so I don't have to babysit the assembler itself checking the resulting machine code, and I can focus on my programming and debugging my bugs. V1.10.4 was very far from this goal, unfortunately. Originally I did want just to add Next instructions and few more small changes, but then I did read through the source of it, and there was some kind of bug and inaccuracy almost everywhere. So instead of few changes I spend months (!) just fixing it.

    I still put backward compatibility as very high priority item, and I believe, considering I made 300+ commits already, I broke minimal amount of old things. But at some points I had some reasons to believe the change is better option.

    In case of MAP removal it was mostly it's poor implementation and lack of documentation (and I still believe STRUCT is as good), so instead of spending another week fixing MAP, I removed it (I was keeping it "as is" as long as it was possible, but due to it's implementation it was getting into my way too much lately, clashing with planned changes, and fixing it was too much of work).

    Sorry. Still thank you for this feedback, I'm actually surprised anyone was using MAP in their projects, when I was asking in the cz/sk community, nobody had it (but each of us is very different, some prefer EQU and manual adjusting of everything, some write code generators in JavaScript and I did want functional STRUCT producing correct machine code...). So it's good to know this change was more problematic then I expected.

  2. #1
    С любовью к вам, Yandex.Direct
    Размещение рекламы на форуме способствует его дальнейшему развитию

  3. #2

    Регистрация
    02.05.2015
    Адрес
    г. Таллин, Эстония
    Сообщений
    1,691
    Спасибо Благодарностей отдано 
    302
    Спасибо Благодарностей получено 
    223
    Поблагодарили
    159 сообщений
    Mentioned
    11 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Ped7g Посмотреть сообщение
    1) not sure what is your issue, some example?
    Downloaded sjasmplus v1.13.0 from git, unpacked.
    Trying to start it from cmd - just hangs, doesnät matter if I start it with asm source as parameter, or without parameters.
    Win 7 home.

  4. #3

    Регистрация
    10.05.2019
    Адрес
    Prague, Czech Republic
    Сообщений
    229
    Спасибо Благодарностей отдано 
    51
    Спасибо Благодарностей получено 
    103
    Поблагодарили
    77 сообщений
    Mentioned
    6 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Bedazzle Посмотреть сообщение
    Downloaded sjasmplus v1.13.0 from git, unpacked.
    Trying to start it from cmd - just hangs, doesnät matter if I start it with asm source as parameter, or without parameters.
    Win 7 home.
    Ouch. Can you please try also some older versions like v1.12.0 and older? Where the issue did start?
    (just running the exe from command line should print out the help page)

    Or is here somebody else who has Win 7 and can try it? (It is tested by z00m in "Win 7 pro 32b", that should work)

    Can you maybe try also decompress the executable (it's compressed with upx: https://upx.github.io/ ), if it still hangs?

    BTW, do you have some antivirus? Doesn't it interfere with it, check maybe some logs or "quarantine" or how these things works (I haven't seen windows for like 12 or 13 years, so I'm not sure how to debug these problems in best way)?

  5. #4

    Регистрация
    21.08.2009
    Адрес
    Cyprus
    Сообщений
    236
    Спасибо Благодарностей отдано 
    91
    Спасибо Благодарностей получено 
    24
    Поблагодарили
    20 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от krt17 Посмотреть сообщение
    Хорошо конечно что стараются, у меня лично на эту ветку были надежды до этого:

    Структуры конечно хорошо, но теперь придется прибавлять <char>. там где это совсем не нужно и делать структуру там где она совсем не нужна. Да можно equ понатыкать, вот удобство так удобство считать вручную. Можно еще disp 0 сделать. Но нафига все эти извраты?
    Жаль конечно.
    MAP/FIELD были выпилены из "основной" ветки тоже давным давно, см. https://zx-pk.ru/threads/447-sjasmpl...=1#post1002128 (в той же теме далее есть пример как с помощью макросов можно делать то же самое)

    MAP/FIELD were removed from the "main" branch years ago as well, see https://zx-pk.ru/threads/447-sjasmpl...=1#post1002128 (in one of the following messages there is an example of how macros can be used to do the same, at least for some use cases)

  6. #5

    Регистрация
    10.05.2019
    Адрес
    Prague, Czech Republic
    Сообщений
    229
    Спасибо Благодарностей отдано 
    51
    Спасибо Благодарностей получено 
    103
    Поблагодарили
    77 сообщений
    Mentioned
    6 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    I'm afraid I completely do NOT understand what is the issue, and how it relates to include. Obviously all your files were included and assembled (otherwise there would be error about being unable to open file), and from the screenshots I see only some ("DISPLAY" output maybe?) different "free RAM" value, but that gives me zero context, what is that number and which code is producing it.

    The warning is probably produced by constant '\\' in source _7EC7-7F5F___print_situation.a80 at line 106, but you didn't show that one either.

    Can you try to explain the problem in some "source -> machine code" way, i.e. showing part of source, and part of listing what machine code was produced, and explain where you see the problem?

    Because as is, I see only different DISPLAY output, and you didn't explain what code is producing that and where the difference starts. So at this moment I have no idea how to help you, and what is the problem, sorry.

  7. #6

    Регистрация
    10.05.2019
    Адрес
    Prague, Czech Republic
    Сообщений
    229
    Спасибо Благодарностей отдано 
    51
    Спасибо Благодарностей получено 
    103
    Поблагодарили
    77 сообщений
    Mentioned
    6 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Is this line 106, or why do you show this part of source? I still don't understand why do you think there is some problem with include.

    I need you to show the actual failure, like what result is wrong, is there some invalid machine code, or missing machine code, etc?

    Maybe switch listing file on (--lst option), and see yourself, how the code is assembled, and if there is something wrong about it, then post the part where you have problem.

  8. #7

    Регистрация
    31.01.2007
    Адрес
    Москва
    Сообщений
    810
    Спасибо Благодарностей отдано 
    11
    Спасибо Благодарностей получено 
    77
    Поблагодарили
    59 сообщений
    Mentioned
    7 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    В том и дело что расположение полей будет хаотичным и не нужно следить где именно в коде они распологаются. Это некий аналог сегментов. Лично мне просто не понятно зачем удалать функционал, пусть и не используемый достаточно часто, но иногда нужный. Воспринимать MAP как аналог STRUCT, по моему, не совсем правильно.
    В любом случае хозяин барин и для пользователей всегда есть выбор, весь вопрос лишь в совокупности необходимого функционала.

  9. #8

    Регистрация
    10.05.2019
    Адрес
    Prague, Czech Republic
    Сообщений
    229
    Спасибо Благодарностей отдано 
    51
    Спасибо Благодарностей получено 
    103
    Поблагодарили
    77 сообщений
    Mentioned
    6 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    I think this is mostly matter of personal taste, what is "pretty source", so I will definitely keep your comment on mind as +1 for MAP return (in my personal view it is like on -3, so you are balancing it toward zero), thank you for the feedback, it's very important for me, because otherwise I'm in my own world only, not even aware of others.

    (it's just low priority at this moment for *me*, because I can fix all your sources from MAP to STRUCT within few minutes if you will send me some "zip", while implementing MAP back into sjasmplus AND fixing any bugs in it, and creating tests to cover it = would take probably couple of hours ... but maybe one day, it's just SW, it can be amended any way any time, if there's time and will to do it)

    I'm working on the designed address setup of struct, i.e. `vars S_VARS = $` will be possible (creating only labels vars.<field_label>, but not emitting bytes of the structure) ... that will be in github in few minutes (code and tests are done, need to add documentation).

    Also maybe somebody can check how the MAP was resolved by macro in Mastermind's thread, maybe it works as 1:1 replacement and would work as compatibility-helper for old sources, although by thinking about 30s about it, I can't see how macros can catch # and ## in source? So it probably requires some small changes to source any way, and if you are editing old source, the modification to struct is very likely same effort).

    (probably this one: https://zx-pk.ru/threads/447-sjasmpl...=1#post1002203 - that requires old source edits too, so I would rather consider just using STRUCT, but you can definitely do macros similar to this, even taking second argument with size of new field)
    Последний раз редактировалось Ped7g; 19.05.2019 в 13:30.

  10. #9

    Регистрация
    22.05.2011
    Адрес
    г. Дзержинск, Украина
    Сообщений
    6,829
    Спасибо Благодарностей отдано 
    483
    Спасибо Благодарностей получено 
    663
    Поблагодарили
    513 сообщений
    Mentioned
    10 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    А если я хочу запихнуть в defarray 16K значений
    то что мне их запихивать в одну строку?
    Код:
    defarray the_array $0000,$0001,.. ...$3FFD,$3FFE,$3FFF
    надо бы как то так
    Код:
    defarray the_array $0000,$0001... ...$000E,$000F
                       $0010,$0011... ...$001E,$001F
                       ...
                       $3FF0,$3FF1... ...$3FFE,$3FFF
    edefarray
    или хотя бы

    Код:
    defarray**** the_array $0000,$0001... ...$000E,$000F
    defarray**** the_array $0010,$0011... ...$001E,$001F
                       ...
    defarray**** the_array $3FF0,$3FF1... ...$3FFE,$3FFF
    edefarray****
    или так

    Код:
    defarray the_array $0000,$0001... ...$000E,$000F
    addarray the_array $0010,$0011... ...$001E,$001F
                       ...
    addarray the_array $3FF0,$3FF1... ...$3FFE,$3FFF
    есть еще какието варианты как еще можно сделать подобное?
    ...


    так же нужен fillarray <array_id> <from>, <to>, <value>
    Последний раз редактировалось NEO SPECTRUMAN; 20.05.2019 в 00:57.

  11. #10

    Регистрация
    02.05.2015
    Адрес
    г. Таллин, Эстония
    Сообщений
    1,691
    Спасибо Благодарностей отдано 
    302
    Спасибо Благодарностей получено 
    223
    Поблагодарили
    159 сообщений
    Mentioned
    11 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    А как правильно делать проверку на версию?
    В документации

    Код:
       IF _VERSION = "1.07"
         ;code for 1.07
       ELSE
         ;code for other version
       ENDIF
    пробую распечатать при помощи
    Код:
    	display "version:", _VERSION
    
    	IF _VERSION = "1.13.0"
    		DEFINE X
    	ENDIF
    
    	IF _VERSION = "20190306.1"
    		DEFINE Y
    	ENDIF

    получаю переполнение:







Страница 3 из 63 ПерваяПервая 1234567 ... ПоследняяПоследняя

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Похожие темы

  1. SjASMPlus Z80 кросс ассемблер
    от Aprisobal в разделе Программирование
    Ответов: 1663
    Последнее: 19.06.2021, 01:36
  2. Исходники TR-DOS для SjASMPlus
    от Keeper в разделе Программирование
    Ответов: 20
    Последнее: 11.02.2011, 11:57
  3. Запуск STS из .sna, сгенерированного sjasmplus.
    от siril в разделе Программирование
    Ответов: 7
    Последнее: 11.10.2010, 21:33
  4. Breakpoints в связке Sjasmplus+UnrealSpeccy
    от Kurles в разделе Программирование
    Ответов: 19
    Последнее: 26.01.2009, 12:36
  5. Disturbed COverMAnia ( music disk with z00m music collection)
    от kyv в разделе Музыка
    Ответов: 10
    Последнее: 27.03.2008, 10:01

Ваши права

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