Инструменты пользователя

Инструменты сайта


msx:xdbg:xdbg

Различия

Здесь показаны различия между двумя версиями данной страницы.

Ссылка на это сравнение

Предыдущая версия справа и слева Предыдущая версия
Следующая версия
Предыдущая версия
msx:xdbg:xdbg [2020-06-29 11:07]
GreyWolf [Руководство пользователя]
msx:xdbg:xdbg [2021-11-12 22:44] (текущий)
GreyWolf создано
Строка 1: Строка 1:
-====== Расширенный экранный отладчик XDBG ====== +~~HIDEPAGE:search;sitemap~
-FIXME +~~REDIRECT>msx:dbg:dbg~~
- +
-Автор: Леонид Бараз +
- +
-====== Руководство пользователя ====== +
-Версия 1 MSX/MSX2 +
- +
-Программа XDBG представляет собой экранный отладчик программ,​ написанных на ассемблере Z80.Этот отладчик может использоваться на ПЭВМ [[msx:​msx_2]] и [[msx:​msx_1|MSX]] , оснащенных [[msx:​yamaha_v9938:​yamaha_v9938|]] ( [[msx:​yamaha_yis-503iir:​yamaha_yis-503iir|]]),​ под управлением операционной системы [[msx:​dos|]] (в том числе в варианте Ю.В.Галутина). +
- +
-Команда вызова отладчика:​ +
-<​code>​ +
-A>​XDbg[/​p[/​s]][/​M] [имя-программы] +
-</​code>​ +
- +
-После XDbg в команде запуска можно указать от одного до трех флажков,​ которые определяют,​ в каком слоте памяти должен располагаться собственно отладчик. Первые два флажка определяют номера первичного и вторичного слота соответственно ''​XDbg/​3/​0''​ — слот 3-0, ''​XDbg/​1''​ — слот 1 нерасширенный). Флажок /M предписывает использование маппера (отладчик располагается в страницах FF, FE и FD). При переносе отладчика максимально возможный размер загружаемой и отлаживаемой программы может достигать 48Kбайт. +
- +
-При отсутствии флажков отладчик размещается в основной оперативной памяти,​ оставляя для программы пользователя вместе с таблицей символических имен только 32КБайт. Однако +
-перенести отладчик в параллельную память можно и в процессе работы посредством команды <​key>​ESC</​key>​ <​key>​u</​key>​ (см. ниже). +
- +
-Примеры отображения на экране:​ +
- +
-Режим листинга ассемблера +
-<​code>​ +
-                        окно заголовка +
-        ┌──────────────────────────────────────────────────┐ +
- +
-┌02000┬───────────────────────────────────────────────────────┬────────────────┐ +
-│List │ X-DEBUGGER Version 1.0      Help:<​Esc>? ​ Visual:​Trace │ EI PC=D827 I=00│ +
-├─────┼──────────────────────────────────────────────────┬────┤8B/​02/​8B/​8B R=58│ +
-│     ​│ ​      ​7FF8:​60 ​          ​LD ​   H,B                │    │--/​--/​--/​-- ​    │ +
-│     ​│ ​      ​7FF9:​4B ​          ​LD ​   C,E                │    │T=838B:​CE6B/​89C3│ +
-│00~00│       ​7FFA:​03 ​          ​INC ​  ​BC ​                ​│ ​   ├────────────────┤ +
-│     ​│ ​      ​7FFB:​1A ​          ​LD ​   A,​(DE) ​            ​│ ​   │ A=00 . sZxHxpNC│ +
-│     ​│ ​      ​7FFC:​FE 38        CP    38                 ​│ ​   │ BC=0240: 00  . │ +
-│     ​│ ​      ​7FFE:​FF ​          ​RST ​  ​38 ​                ​│ ​   │ DE=0000: C3 "​ц"​│ +
-│     ​│ ​      ​7FFF:​FF ​          ​RST ​  ​38 ​                ​│ ​   │ HL=7FFD: 38 "​8"​│ +
-│     ​│MEM80@:​8000:​00 ​          ​NOP ​                     │0078│ IX=1377: 2A "​*"​│ +
-│C0-C0│ ​      ​8001:​00 ​          ​NOP ​                     │    │ IY=0A00: 53 "​S"​│ +
-│     ​│ ​      ​8002:​00 ​          ​NOP ​                     │    ├────────────────┤ +
-│20+1A│ ​      ​8003:​20 FB        JR    NZ,​MEM80@:​8000 ​    ​│ ​   │A'​=00 . szxhxpnc│ +
-│     ​│ ​      ​8005:​DD 2A 08 80  LD    IX,​(PRED:​8008) ​    ​│ ​   │BC'​=0120:​ E1 "​А"​│ +
-│00+00│ ​      ​8009:​C1 ​          ​POP ​  ​BC ​                ​│ ​   │DE'​=0A00:​ 53 "​S"​│ +
-│     ​│ ​      ​800A:​CD CD D9     ​CALL ​ D9CD               ​│ ​   │HL'​=1100:​ 0E  . │ +
-├─┬───┴──────────────────────────────────────────────────┴────┼────────────────┤ +
-│ │       ​3FC0:​E7 38 EB 2A E9 38 7D 93 6F 7C 9A 67 22 EB 38 2A│Г8К*И8}.o|.g"​К8*│ +
-│-│ ​      ​3FD0:​E7 38 EB 21 18 39 C3 0A 1F CD 36 11 22 E9 38 EB│Г8К!.9ц..м6."​И8К│ +
-│ │       ​3FE0:​2A E7 38 7B 95 6F 7A 9C 67 22 EB 38 2A E9 38 EB│*Г8{.oz.g"​К8*И8К│ +
-│+│ ​      ​3FF0:​21 1E 39 C3 0A 1F 0E 07 25 3D 20 03 E9 3C 32 03│!.9ц....%= .И<​2.│ +
-│ │DRIVER:​4000:​41 42 6F 57 76 65 00 00 00 00 00 00 00 00 00 00│ABoWve..........│ +
-│ │       ​4010:​C3 F5 74 C3 86 78 C3 09 79 C3 23 79 C3 50 79 C3│цУtц.xц.yц#​yцPyц│ +
-~│       4020:82 78 C3 35 5B 37 C3 AC 60 C3 14 62 00 C3 AE 5F│.xц5[7ц∞`ц.b.ц∈_│ +
-│ │       ​4030:​2A 4B F3 C9 DD E5 DD 21 B7 00 CD AB 40 DD E1 30│*KСищЕщ!≈.мδ@щА0│ +
-└─┴───────────────────────────────────────────────────────────┴────────────────┘ +
-</​code>​ +
- +
-Режим загрузки программы +
-<​code>​ +
-                           ​окно запроса +
-                    (дополнительное окно файлов) +
-        ┌──────────────────────────────────────────────────┐ +
- +
-┌1F000┬───────────────────────────────────────────────────────┬────────────────┐ +
-│Input│ File:​B:​prog ​   .COM  Area:​07F0-BEFC ​ Reloc:​0100->​07F0 │ EI PC=0100 I=00│ +
-├─────┼──────────────────────────────────────────────────┬────┤8B/​8B/​8B/​8B R=7B│ +
-│     ​│ ​      ​012F:​CB 16        RL    (HL)               ​│ ​   │FB/​FA/​F9/​F8 ​    │ +
-│     ​│ ​      ​0131:​30 0F        JR    NC,​0142 ​           │    │T=BEFB:​CE6B/​89C3│ +
-│     ​│ ​      ​0133:​E5 ​          ​PUSH ​ HL                 ​│ ​   ├────────────────┤ +
-│     ​│ ​      ​0134:​DD 66 00     ​LD ​   H,​(IX+00) ​         │    │ A=00 . szxhxpnc│ +
-│     ​│ ​      ​0137:​DD 6E FF     ​LD ​   L,​(IX-01) ​         │    │ BC=0000: C3 "​ц"​│ +
-│     ​│ ​      ​013A:​19 ​          ​ADD ​  ​HL,​DE ​             │    │ DE=0000: C3 "​ц"​│ +
-│     ​│ ​      ​013B:​DD 74 00     ​LD ​   (IX+00),​H ​         │    │ HL=0000: C3 "​ц"​│ +
-│     ​│ ​      ​013E:​DD 75 FF     ​LD ​   (IX-01),​L ​         │    │ IX=0000: C3 "​ц"​│ +
-│     ​│ ​      ​0141:​E1 ​          ​POP ​  ​HL ​                ​│ ​   │ IY=0000: C3 "​ц"​│ +
-│     ​│ ​      ​0142:​DD 23        INC   ​IX ​                ​│ ​   ├────────────────┤ +
-│     ​│ ​      ​0144:​0B ​          ​DEC ​  ​BC ​                ​│ ​   │A'​=00 . szxhxpnc│ +
-│     ​│ ​      ​0145:​78 ​          ​LD ​   A,B                │    │BC'​=0000:​ C3 "​ц"​│ +
-│     ​│ ​      ​0146:​B1 ​          ​OR ​   C                  │    │DE'​=0000:​ C3 "​ц"​│ +
-│     ​│ ​      ​0147:​20 DF        JR    NZ,​0128 ​           │    │HL'​=0000:​ C3 "​ц"​│ +
-├─┬───┴──────────────────────────────────────────────────┴────┼────────────────┤ +
-│V│ ​     1F020:17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17│................│ +
-│V│ ​     1F030:17 17 17 17 17 17 17 17 17 17 17 17 17 17 12 17│................│ +
-│V│ ​     1F040:17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 19│................│ +
-│V│ ​     1F050:16 49 6E 70 75 74 16 20 46 69 6C 65 3A 20 70 72│.Input. File:​B:​P│ +
-│V│ ​     1F060:6F 67 20 20 20 20 20 20 20 20 41 72 65 61 3A 20│ROG ​   .COM  Are│ +
-│V│ ​     1F070:30 37 46 30 2D 38 41 31 42 20 20 52 65 6C 6F 63│a:​07F0-8A1B ​ Rel│ +
-│V│ ​     1F080:3A 20 30 31 30 30 2D 3E 30 37 46 30 20 20 16 20│oc:​0100->​07F0 . │ +
-│V│ ​     1F090:45 49 20 50 43 3D 30 31 30 30 20 52 3D 37 42 16│EI PC=0100 ​    ​.│ +
-└─┴───────────────────────────────────────────────────────────┴────────────────┘ +
-</​code>​ +
- +
-Отладчик обеспечивает:​ +
-  * загрузку в память и запись на диск программ и таблиц символов (файлов ''<​имя>​.<​тип>''​ и ''<​имя>​.SYM''​); +
-  * просмотр и корректировку содержимого оперативной памяти в символьном и шестнадцатиричном формате,​ а также в виде команд ассемблера;​ +
-  * просмотр и корректировку содержимого видеопамяти в символьном и шестнадцатиричном формате;​ +
-  * просмотр и изменение содержимого регистров отлаживаемой программы;​ +
-  * использование имен, введенных вместе с программой,​ а также добавление новых имен и удаление имеющихся (имена используются и в командах ассемблера);​ имена можно настроить на начальный адрес программы;​ +
-  * выдачу на печать содержимого текущего окна отладчика;​ +
-  * установку и снятие точек приостанова (со счетчиками);​ +
-  * установку и снятие контроля изменения байтов памяти;​ +
-  * покомандное и непрерывное выполнение программы (в том числе и в режиме мультипликации,​ с обходом и без обхода команд [[msx:​basic_programming_guide:​07#​call|CALL]]);​ +
-  * возврат управления отладчику:​ при достижении точки приостанова с нулевым счетчиком,​ при изменении одного из контролируемых байтов памяти,​ при нормальном завершении программы,​ при нажатии клавиши <​key>​STOP</​key>;​ +
-  * пересылку и заполнение областей памяти,​ поиск символьного или шестнадцатиричного образца. +
-  * выполнение арифметических действий над шестнадцатиричными числами;​ +
-  * получение на экране краткой информации о средствах,​ имеющихся в отладчике. +
- +
-При запуске отладчик переводит систему в 80–символьный режим и загружает в оперативную память программу,​ если ее имя указано в команде (имя указывается без уточнения;​ загружаются файлы ''<​имя>​.<​тип>''​ и ''<​имя>​.SYM''​). +
- +
-В процессе работы на экране выделяются поля разметки и поля данных. Курсор всегда находится в одном из полей данных,​ и только в такие поля можно вносить изменения. При выходе курсора из текущего поля его новое содержимое проверяется и заносится в память машины;​ все остальные поля экрана при этом приводятся (по возможности) в соответствие с содержимым изменённого поля. Например,​ для изменения байта или слова данных в любом поле достаточно просто набрать его новое значение и выйти из поля. Аналогично,​ для того, чтобы передвинуть окно листинга или дампа на другие адреса памяти,​ достаточно в любой строке набрать нужное имя в поле имени или нужный адрес в поле адреса. Для создания нового имени достаточно набрать его в соответствующем поле, а для удаления существующего — заменить его на новое или заполнить поле имени пробелами. +
- +
-Все поля данных,​ имеющиеся на экране,​ сгруппированы в окна: три основных ("​дампа",​ "​листинга"​ и "​регистров"​) и одно дополнительное ("​заголовка",​ "​файлов"​ или "​памяти"​). Курсор перемещается в пределах одного окна с помощью стрелок,​ клавиш <​key>'​Ввод '​⏎</​key>,​ <​key>​TAB</​key>​ и <​key>​Ctrl+F</​key>​. Листание осуществляется по клавишам <​key>​Ctrl+J</​key>​ (вверх) и <​key>​Ctrl+Q</​key>​ (вниз). Редактированиение информации выполняется символьными клавишами,​ а также клавишами <​key>​INS</​key>,​ <​key>​DEL</​key>​ и <​key>​BS</​key>​. Переход в другое окно (и установка дополнительного окна) выполняются по одной из следующих +
-команд:​ +
- +
-  - <​WRAP><​key>​ESC</​key>​ <​key>​l</​key>​ Работа в окне листинга ассемблера. +
- +
-Левая колонка содержит точки приостанова (для них указывается максимальный счетчик,​ признак активности (''​+ -''​ активна,​ ''​-''​ активна в параллельном банке памяти,​ ''​- -''​ неактивна) и текущее значение счетчика). В основной части каждой строки окна располагаются поля имени, адреса,​ байтов,​ образующих команду,​ и самого текста команды. +
- +
-Правая колонка окна содержит значения счетчиков профилей выполнения программы (в строках команд с символическими именами). +
- +
-Имена во всех полях (в том числе и в текстах команд) должны заканчиваться двоеточием. Например,​ команды могут записываться в следующем виде: +
-<​code>​ +
-LD    A,​(name:​3000) +
-LD    A,(name:) +
-LD    A,(3000) +
-</​code>​ +
-Команда ''​RST 30''​ (Inter-Slot Call) дополняется в качестве операндов номером слота и адресом вызова. +
-</​WRAP>​ +
-  - <​WRAP><​key>​ESC</​key>​ <​key>​d</​key>​ Работа в окне дампа. +
- +
-Левая колонка содержит признаки контроля изменения байта памяти с указанием активности контроля (''​+/​-/​~''​). В основной части каждой строки окна имеются поля имени, адреса,​ 16 полей байтов в шестнадцатиричном виде и 16 полей тех же байтов в символьном виде.</​WRAP> +
-  - <​WRAP>​3. <​key>​ESC</​key>​ <​key>​v</​key>​ Работа в окне дампа видеопамяти. +
- +
-Содержимое видеопамяти отображается так же, как и в режиме <​key>​ESC</​key>​ <​key>​d</​key>,​ однако левая колонка заполняется буквами V (для VRAM) или E (для ERAM). При просмотре VRAM поле адреса дополняется слева еще одним разрядом,​ чтобы охватить все 128 Kбайт. +
-</​WRAP>​ +
-  - <​WRAP><​key>​ESC</​key>​ <​key>​r</​key>​ Работа в окне регистров. +
- +
-Окно содержит поля значений всех регистров,​ а также байтов или слов, на которые указывают шестнадцатибитные регистры. Одновременно с шестнадцатиричными значениями байтов выдается их символьное представление. +
- +
-Кроме того, имеются поля счетчика команд (PC), состояния обработки прерывания (EI/DI) и выбранного банка памяти (с указанием слота и страницы маппера) для всех четырех 16 Kбайтных страниц. Наличие или отсутствие маппера распознается автоматически. +
-</​WRAP>​ +
-  - <​WRAP><​key>​ESC</​key>​ <​key>​y</​key>​ Показ символических имен. +
- +
-Окно листинга ассемблера заполняется строками,​ соответствующими символическим именам.</​WRAP>​ +
-  - <​WRAP><​key>​ESC</​key>​ <​key>​b</​key>​ Показ точек приостанова. +
- +
-Окно листинга ассемблера заполняется строками,​ соответствующими точкам приостанова. +
-</​WRAP>​ +
-  - <​WRAP><​key>​ESC</​key>​ <​key>​h</​key>​ Показ контролируемых байтов. +
- +
-Окно дампа заполняется строками,​ соответствующими адресам байтов,​ изменение которых контролируется. +
-</​WRAP>​ +
-  - <​WRAP><​key>​ESC</​key>​ <​key>​i</​key>​ Чтение файлов. +
- +
-В дополнительном окне располагаются поля имени файла и интервала адресов для размещения программы. После нажатия клавиши перевода строки файл с именем ''<​имя>​.<​тип>''​ считывается в память (конфигурация слотов и маппера определяется соответствующими полями в окне регистров). +
- +
-Кроме того, к таблице имен присоединяются имена из файла ''<​имя>​.SYM'',​ если он есть. С помощью полей ''​Reloc:''​ можно указать настройку символических имен на нестандартный начальный адрес программы. +
-</​WRAP>​ +
-  - <​WRAP><​key>​ESC</​key>​ <​key>​o</​key>​ Запись файлов. +
- +
-В дополнительном окне располагаются поля имени файла и интервала адресов. После нажатия клавиши перевода строки указанная область памяти записывается в файл ''<​имя>​.<​тип>'',​ а все символические имена — в файл ''<​имя>​.SYM''​ (конфигурация слотов и маппера определяется соответствующими полями в окне регистров). +
-</​WRAP>​ +
-  - <​key>​ESC</​key>​ <​key>​p</​key>​ Выдача на печать содержимого текущего окна отладчика (печать прерывается при нажатии <​key>​CTRL+STOP</​key>​). +
-  - <​WRAP><​key>​ESC</​key>​ <​key>​m</​key>​ Пересылка информации. +
- +
-В дополнительном окне располагаются поля запроса двух интервалов адресов:​ откуда и куда требуется переслать информацию. При изменении начального адреса в дном из интервалов соответствующий конечный адрес автоматически изменяется так, чтобы длины интервалов совпали. При изменении конечного адреса таким же образом меняется конечный адрес другого интервала. +
-</​WRAP>​ +
-  - <​WRAP><​key>​ESC</​key>​ <​key>​f</​key>​ Заполнение области памяти. +
- +
-В дополнительном окне располагаются поля запроса интервала адресов и образца для заполнения. Образец для заполнения может быть набран в символьном или шестнадцатиричном виде (вид определяется полем, содержащим букву C или X соответственно). Размер образца определяется положением курсора в момент нажатия клавиши <​key>'​Ввод '​⏎</​key>​. +
-</​WRAP>​ +
-  - <​WRAP><​key>​ESC</​key>​ <​key>​s</​key>​ Поиск образца. +
- +
-В дополнительном окне располагаются поля запроса интервала адресов и образца для поиска. Образец для поиска может быть набран в символьном или шестнадцатиричном виде (вид определяется полем, содержащим букву C или X соответственно). Размер образца определяется положением курсора в момент нажатия клавиши <​перевод строки>​. Поиск можно прервать нажатием <​key>​CTRL+STOP</​key>​. +
-</​WRAP>​ +
-  - <​WRAP><​key>​ESC</​key>​ <​key>​e</​key>​ Начальная установка регистров. +
- +
-Все регистры устанавливаются в 0, счетчик команд PC устанавливается на 100h, состояние прерываний — разрешены (EI), всем страницам памяти сопоставлены основные банки памяти (установленные при запуске отладчика). +
-</​WRAP>​ +
-  - <​key>​ESC</​key>​ <​key>​z</​key>​ Начальная установка текущих счетчиков точек приостанова (они устанавливаются равными максимальным счетчикам). +
-  - <​WRAP><​key>​ESC</​key>​ <​key>​c</​key>​ Шестнадцатиричный калькулятор. +
- +
-В дополнительном окне располагаются два поля операндов (четырехзначные шестнадцатиричные числа),​ поле знака операции (+, -, *, /, %) и поле показа результата. Поле результата заполняется при смене любого операнда или знака операции. +
-</​WRAP>​ +
-  - <​WRAP><​key>​ESC</​key>​ <​key>​t</​key>​ Установка базового адреса PNT и PGT отладчика. +
- +
-Поле базового адреса располагается в левом верхнем углу рамки. При вводе нового значения в этом поле PNT и PGT переносятся на указанный адрес и автоматически инициализируются. Таблицы PNT и PGT занимают 1000h байт VRAM, начиная с указанного адреса. +
-</​WRAP>​ +
-  - <​WRAP><​key>​ESC</​key>​ <​key>​u</​key>​ Перенос отладчика в параллельную память. +
- +
-Программы и данные самого отладчика переносятся в ту память,​ которая задана полями слотов и маппера в окне регистров. При этом для загрузки и отладки программ пользователя становится доступным около 48 Кбайт памяти. +
- +
-Перенос в параллельную память не может быть выполнен,​ если хотя бы одна из трех страниц (0000-3FFF,​4000-7FFF,​ 8000-BFFF) совпадает с первоначальной по  слотовому адресу. Кроме того, если при запуске отладчика или в процессе работы перенос выполнен, ​ его нельзя ни отменить,​ ни изменить;​ можно только выйти из отладчика и загрузить его снова. +
-</​WRAP>​ +
-  - <​key>​ESC</​key>​ <​key>​q</​key>​ Завершение работы отладчика и выход в среду операционной системы с восстановлением исходного режима экрана (40/80 символов). +
-  - <​key>​ESC</​key>​ <​key>?</​key>​ Показ страницы с подсказкой. +
-  - <​WRAP><​key>​CTRL+g</​key>​ Запуск программы. +
- +
-Программа начинает выполняться с адреса,​ находящегося в счетчике команд PC. Устанавливается заданное пользователем распределение банков памяти. +
-Если режим мультипликации выключен (''​Visual:​No''​),​ на время работы программы экран переключается на обычную страницу системы (0000h). Если же режим мультипликации включен (''​Visual:​Exec''​ или ''​Trace''​),​ системная страница не включается,​ зато после каждой исполненной команды обновляется содержимое экрана отладчика. В режиме ''​Visual:​Exec''​ исполняется отдельно каждая команда,​ а в режиме ''​Visual:​Trace''​ взамен одной команды [[msx:basic_programming_guide:07#​call|CALL]] исполняется вся вызываемая подпрограмма. +
- +
-Все точки приостанова устанавливаются в основных банках памяти (которые были включены при запуске отладчика). +
- +
-При достижении одной из активных точек приостанова (с признаком "​+"​ или "~") либо выполняется уменьшение счетчика (если он ненулевой),​ либо приостанавливается выполнение программы и управление передается отладчику. Аналогично выполнение программы приостанавливается при изменении содержимого одного из активных контролируемых байтов. Следует иметь в виду, что выполнение программы значительно замедляется при установке контроля изменения байтов. +
- +
-Выполнение программы можно приостановить нажатием клавиши <​key>​STOP</​key>​ (если прерывания в этот момент разрешены). При выполнении команды ''​RET''​ с начальным состоянием стека или команды ''​RST 0''​ управление также передается отладчику;​ при этом считается,​ что программа успешно завершена. +
- +
-Обработка точек приостанова организуется с помощью ''​RST 0'',​ поэтому все остальные команды ''​RST''​ могут использоваться в отлаживаемой программе без ограничений. После возврата управления отладчику в окне листинга ассемблера первая строка устанавливается на команду,​ с которой начиналось выполнение,​ а вторая — на ту, которая вызвала приостанов (в ней устанавливается курсор). +
- +
-Передача управления отладчику при достижении точки приостанова или при завершении программы возможна только при условии,​ что странице 0000h-3FFFh в этот момент сопоставлен основной банк памяти (тот же, что и при запуске отладчика). +
- +
-При выполнении программы ведется подсчёт профилей по всем символическим именам (при каждом прерывании и при трассировке отдельной команды увеличивается на единицу счетчик профиля ближайшего символического имени с адресом,​ меньшим текущего PC). Значения счетчиков профиля отображаются в правой колонке окна листинга ассемблера. +
-</​WRAP>​ +
-  - <​WRAP><​key>​CTRL+x</​key>​ <​key>​SELECT</​key>​ Выполнение одной команды. +
- +
-Выполняются те же действия,​ что и по указанию <​key>​CTRL+g</​key>,​ но исполняется только одна команда (расположенная по адресу из счетчика команд PC). Можно исполнять также команды,​ находящиеся в ПЗУ (однако точки приостанова в ПЗУ устанавливать нельзя). +
-</​WRAP>​ +
-  - <​WRAP><​key>​CTRL+t</​key>​ Выполнение команды с обходом подпрограммы. +
- +
-Выполняется аналогично <​key>​CTRL+x</​key>,​ но для команды [[msx:​basic_programming_guide:​07#​call|CALL]] управление возвращается отладчику только после выполнения вызываемой подпрограммы. При выполнении подпрограммы выполняется обычная обработка точек приостанова (как в <​key>​CTRL+g</​key>​). +
-</​WRAP>​ +
-  - CTRL+p Установка счетчика команд PC на ту команду,​ против которой находится курсор. +
-  - <​WRAP><​key>​CTRL+v</​key>​ Выбор режима мультипликации. +
- +
-Устанавливается один из режимов ''​Visual:​No'',​ ''​Exec''​ или ''​Trace''​. +
- +
-Распределение видеопамяти:​ +
-<​code>​ +
-0000h - PNT системы и программы. +
-1000h - PGT системы и программы. +
-2000h - PNT отладчика. +
-2800h - PGT отладчика. +
-3000h - PNT подсказки. +
-</​code>​ +
-</​WRAP>​ +
- +
-{{dbgrdv.zip|}},​ [[http://​fms.komkon.org/​MSX/​DBGRDV.zip|оригинал]] +
- +
-====== Ссылки ====== +
- +
-http://​fms.komkon.org/​MSX/​DBGRDV.zip +
- +
- +
-{{tag>​MSX Assembler}} +
msx/xdbg/xdbg.1593418049.txt.gz · Последние изменения: 2020-06-29 11:07 — GreyWolf