SJAsm + MultiEdit (beauty and convenience)

ZXNet echo conference «code.zx»

From Roman Fhyedorov To All 4 September 2006

Hello, All я начинал кодить в GENS`e? потом в PRIMUS`e. это была такая примочка к ZEUS`у. типа интерфэйс и др. (кстати у кого оно есть? мне надо!). потом появился TASM и все исходники были перенесены в его формат. затем MASM и опять конвертация исхлдников. ну и в конце концов привыкнув к интерфейсу TASM`a я не смог обойти вниманием ALASM, а исходники постигла участь очередной конвертации... времена изменились, я повзрослел и у меня появились жуткая нехватка свободного для кодинга времени и отстутствие места под реальный спекк в квартире. свой навороченый скорп я отдал брату на сохранение, но тяга к спекку не пропала. я стал писать в ALASM`e под эмулём, кстати несколько раз удачно. проблемы проявились позже... то я случайно закрою эмуль (он конечно спрашивает "сохранить вам диск? там чо-то поменялось", а я по запарке нажимал "нет", типа не надо закрывать, а он закрывался хороня с собой набиваемые всю ночь тексты), то свет отключат, а я давно не сохранял trd... короче ужос... позже в эмуль добавили кнопку "отмена" для таких как я, но мне всё равно чего-то не хватало... я программист по профессии мне нужна нормальная среда разработки, т.е. редактор, компилер, дебаггер. и чтобы всё работало вместе!!! и тут волей судеб я натолкнулся на старое сообщение Kurles`a http://zx.pk.ru/showpost.php?p=45452&postcount=10 в моём сознании появилось просветление! вот оно решение проблем!!! подумал я. осталось только помучать Kurles`a на предмет того, как он это сделал... чем я последние два дня и занимался... итак, к делу, товарищи! для начала нам нужны такие вещи: 1.sjasm http://trd.speccy.cz/sbor/SJASM+.ZIP 2.multiedit http://www.multiedit.com/downloads/upgrade/SetupMe910.exe (14 метров кстати!!!) 3.файлик из атачча написаный Kurles`ом, кстати затем мы правдами и неправдами (последнее особенно) устанавливаем multiedit. потом в директории куда он установился находим папку MAC и кладём туда соответствующий файлик из атачча. запускаем значит multiedit (надеюсь он уже не trial у вас) идём в tools>customize>general>languages создаём язык (Z80, например) кнопкой insert заполняем поля reserved words; 1:; display macro endm rept dup edup org ent page savesna savebin savehob db defb dw defw ds defs if endif else disp equ labelslist incbin include 2; neg; ccf rl cpl scf inc dec sub sbc add adc ei di halt ld rlca rla rrca rra rlc rr sla sra srl rld rrd bit ldir ldi lddr ldd cpi cpir cpd cpdr cp xor and or set res ex exx nop im call jp jr ret reti retn rst in ini inir ind indr out outi otir outd outr sli djnz push pop 3; a; b c d e f h l af hl de bc af' bc' de' hl' iy ix r i sp 4; z; nz c nc pe po p m потом поля symbols; @=*+-/.,^:;; brackets; ()[]<>; strings; "'; numerics; #; $ дальшe идём к полям block comment; open1:; /* close1; */; ещё одни поля end of line comments; 1:; ; 2; //; в поле tag file пишем: z80.tag ниже в поле find tag пишем: Z80^Z80FindTag ну в этом окошке всё. идём дальше не расслабляемся. после нажатия ok>close нажимаем filename extension тут мы создаём тип файла, опять же кнопкой insert, например 'a80' (чтоб ЧВ открывать) в поле extension так и пишем a80 ставим галочку associate to desktop shell, чтобы расширение a80 открывалось multiedit`ом по умолчанию в поле language выбираем созданый нами ранее z80 внизу справа есть кнпочка compiler/program setup, дык нажмите же её!!! уже привычной кнопкой insert создаём описание компилера в description пишем sjasm в command что-то типа c:sjasmplus.exe -md . ниже в поле program type создаём тип z80, естественно не без кнопки insert внизу есть поля regular expressions, дык вот заполняем их: search; ^([^; ]+) line (): (.*)$ replace; /F=/L=1/M=2; и всё блиать!!!! теперь мы можем компилить текст прямо из multiedit`a (кнопкой F9, например) получая на выходе файлик с метками для эмуля UNREAL и объектный код! кстати как захотите так и настроите (хоть trd), но для этого почитайте manual по sjasm`у также мы можем перескакивать по ошибкам выдаваемым компилятором в нижнем окошечке output а для того чтобы видеть метки нажмите view>tags потом меню tags>scan tags for current file и ПРАВИЛЬHЫЕ МЕТКИ появятся в окошечке tags!!! причем, по ним можно переходить и даже если они в другом файле!!! ПРАВИЛЬHЫМИ МЕТКАМИ являются метки после которых нет никаких символов (ну как в ALASM`е короче) а если почитать manual по multiedit`у, то можно найти ещё больше всяких фич облегчающих наш программерский труд. например при нажатии shift+F11 если курсор стоит в ссылке на метку мы на неё перейдём. а теперь, пользуясь случаем я хочу передать привет моему брату и сказать ОГРОМHОЕ СПАСИБО Aprisobal`у и Kurles`у!!! авторы multiedit`a перебьются - у них работа такая. творческих успехов ребята!!! новых игр и софта!!! не только cpu loves you, но и я!!! p.s. исходники своей стратегии я уже перевёл в *.a80 щас попрёт маза!!! Файл: Multiedit.zip http://zx.pk.ru/attachment.php?attachmentid=3698

From Sergey Kuznetsov To All 4 September 2006

Hello bugsy If it's not a secret, what is the trick of using MultiEdit? IMHO there is decent, customizable and less monstrous editors. SciTE for example.

From Roman Fhyedorov To All 4 September 2006

Hello, CHRV what about the letter I?

From Chunin Roman To All 4 September 2006

Hello bugsy bug> what about the letter I? It does not digest the letter I at the end of the line (although this is only for Windows mode seems relevant).

From Chunin Roman To All 4 September 2006

Hello bugsy bug> well, we managed to fasten it efficiently. bug> I don’t argue that there are others. I’ve been using the multi-edit version probably since version 5, probably for 12 years now. He’s a monster, of course, and there’s an eternal problem with the letter “I”.

From Roman Fhyedorov To All 4 September 2006

Hello, 736b Well, we managed to fasten it with high quality. I don't argue that there are others.

From Roman Fhyedorov To All 5 September 2006

Hello, moroz1999 you wanted ME?!?!? what kind of SCI could there be?!?!?

From moroz1999 To All 5 September 2006

Hello, 736b 736> SciTE for example. By the way, has anyone seen a z80 asm coloring for it? I quickly threw it in commands in standard asm for minimal coloring, but even post it shame.

From Andrey Savichev To All 5 September 2006

Hello, CHRV CHR> I've been using the multi-edit version probably since version 5, probably for 12 years already. I'm with the eighth... but to get the full thrill you need to master its macro-like programming language...then by the way, you can do a lot of things with sjasm add...also pay attention to the capabilities of its help system...since you can get help for anything that is indexed in the help file...well and it also supports project management

From Aprisobal To All 5 September 2006

Hello andrews MultiEdit is, IMHO, the only editor that highlights normally syntax, parses output, build and debug actions on hotkeys, supports project management and has a clear interface. Crimson Editor; There is; projects, syntax highlighting, but no hotkeys for Tools. Programmer's Notepad 2; There is; projects, parses output, hotkeys for Tools, but inconvenient settings for syntax highlighting and glitches in general ruin everything. Although in it I completely wrote the game for Your Game 3. UltraEdit; There is; projects, macros and much more, but strange setup syntax highlighting, no output parsing, no hotkeys for Tools. All the rest, for the most part, either do not have customizable backlighting syntax either there are no hotkeys on Tools (this is very important) or they have inconvenient interface. It would be interesting to know who uses which editor. Only in a separate thread plz, so as not to make it off-topic here.

From Aprisobal To All 5 September 2006

Hello, key-jee key> Actually, the hot buttons on tools/macros in CE work.. I guess I missed something... :v2_wacko; Myself; after all, the colors are for him posted - http://zx.pk.ru/attachment.php?attachmentid=346 I also looked at the ConTEXT editor; There is; projects, tools on hotkeys, syntax highlighting and output parsing. Not a bad alternative. In the attachment Z80 syntax highlighting (unzip to Highlighters folder). File: z80 assembler highlighter.zip http://zx.pk.ru/attachment.php?attachmentid=3705

From Ivan Petukhov To All 5 September 2006

Hello, Aprisobal Apr> Crimson Editor; There is; projects, syntax highlighting, but no hot ones Apr> keys for Tools. Actually, the hot buttons on tools/macros work in CE..

From moroz1999 To All 5 September 2006

Hello bugsy bug> you wanted ME, right?!?!? what kind of SCI could there be?!?!? Who was this addressed to? I've been on scite all my life.

From Roman Fhyedorov To All 22 September 2006

Hello, moroz1999 In connection with the release of 1.07, multiedit needs to be adjusted a little. I'm there first wrote 'akhtung' in red letters in the message

From Roman Fhyedorov To All 13 October 2006

Hello bugsy The coolest feature of multiedit has been found!!! he knows how to collapse procedures and functions into one line! how have I not before noticed?!?!? The feature is called "collapse". for example strings ┌─- code ─── org #6000 call somecode ret ;*********************************** ;+ somecode ;* in; none; ;*out; none; ;*********************************** somecode ld hl,#0000 ret └── code ─── curl up into ┌─- code ─── org #6000 call somecode ret ;*********************************** +;+ somecode └── code ─── and if you press the plus sign it will turn back!!! I have previously seen such features only in full-fledged IDEs, in 1Cv8 for example ;) applicable to ZX until today I only dreamed about it...

From Dmitry Vasilievich Terentyev To All 16 October 2006

Hello bugsy UltraEdit easily collapses and expands, you can also customize the code between macro endm will collapse and expand, plus everything is still calm digests the errors generated by SJasm and by clicking on the error you can get to the required line in the source

From Roman Fhyedorov To All 16 October 2006

Hello demon_zx dem> can be configured and the code between macro endm will collapse and dem> expand this is cool!!! dem> yes, plus everything else, it calmly digests the errors generated dem> SJasm and by clicking on the error you can get to the desired line in dem> source if you read my first message, you would understand that this is possible in multiedit. There is also such a feature as navigating by tags. as in Alasma according to EXT+L. only here the labels are displayed in a small window on the right, which is very convenient

From Dmitry Vasilievich Terentyev To All 17 October 2006

Hello bugsy In the previous message I forgot to mention that you can also follow the tags as in Alasm 8-P, so so far there are no significant differences visible

From Roman Fhyedorov To All 18 October 2006

Hello demon_zx it's all good... But how can you navigate through the marks in UltraEdit?

From Roman Fhyedorov To All 20 October 2006

Hello bugsy while the kerners are fighting with the linkers [http://zx.pk.ru/showthread.php?t=3973] I want to tell you, dear friends programmers talk about how to get even more pleasure from coding. comrade demon zx [http://zx.pk.ru/member.php?u=1141] seduced (!) a couple of days ago me try ultraedit [http://ultraedit.com] together with our beloved asm... It turned out that I was wrong... naturally the only thing is that multiedit rules... forget about it, friends! ultraedit foreva!!! he is much more beautiful! it is no less, and maybe even more convenient. it has the ability to normally configure folding procedures (well, fold you can put them in a line!) if YOU, dear comrades, are interested in THIS, I can tell you how to SET UP ultraedit under sjasm.

From elfh To All 25 October 2006

Hello bugsy Tell me, I still decided to try.

From Witch Doctor To All 30 October 2006

Hello elf YES!!! And then how to debug beautifully in a debugger in Unreal???

From Witch Doctor To All 30 October 2006

Hello, Witch Doctor By the way! And what will critics say about notepad++ 3.9 - I guess it’s also “small bug, but stinky”

From Alexey Goncharov To All 31 October 2006

Hello, Witch Doctor I use it, but for a different purpose, because it’s Notepad, not an IDE. He is now replaces bred3 for me.

From Dmitry Vasilievich Terentyev To All 31 October 2006

Hello NovaStorm Debugging is like this: you put jr $ in the code (like a stop point), and then understand (you can, in principle, use di:halt, but the first option is better, on interrupts must be restored manually)

From Witch Doctor To All 1 November 2006

Hello demon_zx God... but what about STS? Sounds scary right away :) That is if, say, we need it like in alasm + STS: i.e. for example, you compile a procedure and if you want to immediately see it in deBugger first, then jr $ should be put first team... I.e. we get the same as with such actions in alasma + sts by performing assemble commands and then immediately debug???

From Dmitry Vasilievich Terentyev To All 2 November 2006

Hello, Witch Doctor Almost, unril will write “cpu stopped”, press escape and we are in the debugger, we score jr $ zeros and go!

From poisoned cyberjack To All 2 November 2006

Hello demon_zx Well, what about UltraEdit???

From Roman Fhyedorov To All 2 November 2006

Hello, psndcj can I write tomorrow?

From elfh To All 26 November 2006

Hello, elfh если кому-то интересно, я настроил multiedit 9.10, чтобы иметь возможность переходить по ошибкам компиляции tools>execute compiler> reset original line numbers - выставляем current, tools>рядом program type ...> edit> regular expressions> search> заполняем вот tools>этим: ^(

)(()):(error:.#)$ ниже идет replace - заполняем: /F=/L=3/M=4

From elfh To All 2 December 2006

Hello elf Looks like I'm talking to myself in this thread ;) I have another problem. periodically in multiedit I get the error error 3032, level 2 - type file is busy other application, my text, I mean. and save nothing. then goes away on its own. unpleasant. Has anyone had something like this? how did you decide?

From Roman Fhyedorov To All 3 December 2006

Hello elf elf> ... has anyone had something like this? How did you decide? I decided by using ultraedit

From poisoned cyberjack To All 3 December 2006

Hello bugsy bug> I solved it by using ultraedit By the way... it seems like someone promised something... or “tomorrow”? =)

From Roman Fhyedorov To All 4 December 2006

Hello, psndcj I told you TOMORROW! and you keep coming TODAY! ;) To be honest I'm having a writer's block

From Roman Fhyedorov To All 5 December 2006

Hello, CHRV need to think... ;)

From Roman Fhyedorov To All 15 December 2006

Hello elf interesting...

From elfh To All 15 December 2006

Hello elf I figured out why unrealspeccy debugger hangs! This happens if the length the labels are somewhere around 12 characters - I don’t know exactly.