что творится с русским языком?(:
Я понимаю. Но С-то мы как-то дебажим, хотя там запросто строка в несколько строк ассемблера может трансформироваться. Или наоборот, если очень хочется, можно наверняка и редактор научить показывать нам одно, дебаггеру другое и всё это согласовывать.
  • avatar Raider
  • 1
Посыпаю голову пеплом, мне не удалось объяснить =) Я про дебаг, не про intellisence.
Дебаггером в отладке не простепаешь по statements в строке.
Дебаг-инфа сохраняется в виде адрес->строчка исходного кода.
  • avatar sq
  • 3
Артём, терпения тебе!
гугл не согласен ага
«создают только» === «создают только %something%»
«созидают только» === «занимаются созданием только %когда%»
Вариант написания
я напомню:
  • avatar VBI
  • 0
отсылка к известному кодеру ROB G? ;)
  • avatar sq
  • 3
и да, я пользуюсь двумя-тремя табами перед каждой строкой кода :)
ДА КАК ТЫ МОЖЕШЬ! ТЫ НЕ ИМЕЕШЬ ПРАВА! ТЫ ОБЯЗАН ИСПОЛЬЗОВАТЬ ОДИН ТАБ! ЛУЧШЕ ВООБЩЕ НЕ КОДЬ, ЧЕМ ТАК! СЖЕЧЬ ВЕДЬМУ!
Вова, прочти метку задом наперёд и всё станет прямо-таки очевидно.
Я сейчас ещё хуже пишу ;) Хотя Lirus ваще богомерзкий, я там извращался, написал всё на основных регистрах, зарелизил. А потом такой, блин, ix+32 даст мне сразу клетку под точкой, а я там ld bc,32: add hl,bc #fuckfuckfuckafterthis
  • avatar ShaMAN
  • 8
на отличненько все ебанулись :)
  • avatar sq
  • 3
Вова, это всё потому что метка в строку написана!
Надо было написать:
G
R
O
B

чтобы тебе понятнее было!
  • avatar VBI
  • 0
уверенность только в том, что хорошо оформленный исходник ты сам сможешь довольно быстро понять при первой необходимости.
я отлично запомнил метку для подпрограммы у Коши:
GROB

что делает эта процедура? ;)
  • avatar VBI
  • 0
ща и ты получишь :)
Деня, твой звин сильно расхолаживает.
Есть большой смысл ставить метки в начале строки — так ты визуально отделяешь начало подпрограммы от кода:
ld a,(lives)
	or a
	jr nz,notGameOver
	;
	ld a,GS_GAMEOVER
	ld (gameState),a
	ret
	notGameOver
	ld a,GS_LOADING
	ld (gameState),a


«notGameOver», деня! а не " notGameOver"
почему? потому что другие асмы воспринимают эту метку иначе.
отсюда же:

setVirusFlag

ex af,af'
ld a,1
ld (mapVirus),a
ld a,virusDelay
ld (mapNoVirusCount),a
call putVirusToRadar
ex af,af'
ret

минимум — пробел в начале строки перед кодом, и никаких пробелов для меток, переменных.
В общем, все две твои игры которые я портировал, начинались с того что я приводил текст в нормальный вид, я, блин, ФОРМАТИРОВАЛ КОД с начала.
зачем? да он не компилируется!

и да, я пользуюсь двумя-тремя табами перед каждой строкой кода :)
  • avatar VBI
  • 3
Robus, плиз, перестань разговаривать с каким-то воображаемым человеком, при этом ещё и ругаясь с ним.
мы то не в курсе с кем ты говоришь. а читаем именно мы а не он :)

но!
LD A,32,(DE),A:INC E:DJNZ $-2 === IzcOrD788LMOaLcSDNUvWuYBk0otWm!ya3
а это — кусок кода из wild player, подпрограмма PRLIN
т.е. нужно дополнительное и немалое усилие что-бы прочитать что здесь, особенно если весь стиль — такой.
другими словами — такой код нужно сразу приводить к стандартным мненоникам, а потом только разбираться и тестить и ИСКАТЬ ГДЕ НЕ ВЕРНО СКОНВЕРТИЛ К СТАНДАРТНЫМ МНЕМОНИКАМ z80!
нахер эти головоломки дополнительные?

с другой стороны —
ld hl,#4000: ld de,#4001: ld bc,6911: ld (hl),l: ldir гораздо легче воспринимается.
благодаря тому что ЕСТЬ КОМАНДЫ, А НЕ какая-то МЕТАКОМАНДА LD, и они отделены пробелами и двоеточием.

если учесть что для некоторых асмов нужно писать XOR A,A а для других эта же запись на выходе выглядит как XOR A: XOR A, то дополнительно себе устраивать дебаг ещё и по этому поводу я вообще не пойму.

В общем — любой дебаггер выводит по команде в строку, не смешивая. это показывает как код выполняется процессором.
и поэтому, это — нормальная запись.
  • avatar ShaMAN
  • 0
Некоторые сценеры входят во вкус и созидают только когда сталкиваются с необычной задачей.
Артем, наверное создают?