-
Notifications
You must be signed in to change notification settings - Fork 3
/
Copy pathHRTmon.guide
2278 lines (1405 loc) · 59 KB
/
HRTmon.guide
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
@database HRTmon.guide
@wordwrap
@author "Alain Malek (Hornet of Alcatraz)"
## Dec 27, 1998
## This is a doc file in the amigaguide.library format.
##-------------------------------------------------------------------
@Node Main "HRTmon documentation"
HRTmon v2.38 Documentation
@{" Introduction " Link Introduction}
@{" Requirements " Link Requirements}
@{" Installation " Link Installation}
@{" FAQ " Link FAQ}
@{" * Usage * " Link Usage}
@{" Disclaimer and Author Info " Link Disclaimer}
@{" Thanks to ... " Link Thanks}
@{" The future " Link Future}
@{" History " Link History}
look out for the latest version at:
http://dumbo.cryogen.ch/hrtmon/index.html
https://github.com/wepl/hrtmon
@EndNode
##-------------------------------------------------------------------
@Node Introduction "HRTmon/Introduction"
HRTmon
Copyright © 1991 - 1998
All Rights Reserved
Written by
Alain Malek
Have you ever wanted to get an Action Replay on your A1200, A3000 or A4000 ?
If the answer is yes, then you should have a look at HRTmon.
HRTmon is a monitor for your Amiga, which doesn't use the libraries.
You can invoke the monitor at any point. Even if a game or a demo switched
off the interrupts.
Once in HRTmon you can watch all the memory, disassemble, edit, save, etc...
(Have a look at the @{"commands list" Link Commands}).
and continue, as if nothing happend.
You don't have to care about any picture address. ALL the CHIP-memory can
be edited transparently.
To work perfectly HRTmon requires a 'magic' @{"level7 button" Link Level7}.
(This button is recommended but you can use HRTmon without it.)
HRTmon is now free, and released under the GNU General Public License (GPL)
(see: http://www.gnu.org)
visit the HRTmon web site at: http://dumbo.cryogen.ch/hrtmon/index.html
@EndNode
##-------------------------------------------------------------------
@Node Requirements "HRTmon/Requirements"
@{b}REQUIREMENTS@{ub}
Any Amiga with Kickstart 2.0 (or greater).
68000 - 68060 processor.
A @{"level7 interrupt button" Link Level7}. (Recommended)
Tested on:
- A1200
- MC68020,MC68060
- Kickstarts 39
- 2.0MB CHIPRAM, 0 - 16MB FASTRAM
Note:
- HRTmon won't work with tools like Enforcer.
To get a complete control over the system, HRTmon HAS to access the
exception vectors memory, which will generate lots of Enforcer-hits.
If you find any bugs under your configuration, please contact me
(address in the @{" Disclaimer and Author Info " Link Disclaimer} section).
@EndNode
##-------------------------------------------------------------------
@Node Installation "HRTmon/Installation"
@{b}INSTALLATION@{ub}
Simply copy these files in the same drawer.
HRTmon.data
HRTmonPrefs
HRTmonPrefs.info
HRTmon.guide
HRTmon.guide.info
HRTmon (this file can also be copied in c: for example)
Copy libs/reqtools.library to your libs: directory.
(If you don't have it already).
@EndNode
##-------------------------------------------------------------------
@Node Usage "HRTmon/Usage"
@{b}USAGE@{ub}
@{" HRTmon " Link HRTmon}
@{" HRTmonPrefs " Link HRTmonPrefs}
@{" Floppy disk launch " Link Floppy}
@{" Enter HRTmon " Link Enter}
@{" The editor " Link Editor}
@{" The tracer " Link cmd_f7}
@{" Commands list " Link Commands}
@{" Remove HRTmon " Link Remove}
@EndNode
##-------------------------------------------------------------------
@Node HRTmon "HRTmon/Usage/HRTmon"
@{b}HRTmon@{ub}
This program will launch HRTmon and use the preferences selected
in the @{"HRTmonPrefs" Link HRTmonPrefs} program.
It will try to load the HRTmon.data file from the current directory,
if it fails it will look into the HRTmonPrefs directory.
Usage: HRTmon -r
-r : only remove HRTmon if found in memory (no installation)
@EndNode
##-------------------------------------------------------------------
@Node cmd_f7 "HRTmon/Usage/Tracer"
@{b}Tracer@{ub}
- You can enter the tracer by pressing the F7 key.
- To get out of the tracer just press F7 again
- To trace one single instruction press the right-arrow.
- To trace a BSR or a JSR instruction without tracing all the sub-routine
press the down-arrow. (The sub-routine will be executed but not traced.)
@EndNode
##-------------------------------------------------------------------
@Node Editor "HRTmon/Usage/Editor"
@{b}The Editor@{ub}
@{b}General:@{ub}
- When you enter HRTmon, you get directly in the editor.
- If the keyboard doesn't respond, just press your right-mouse button, to
reinit the CIA. (HRTmon doesn't do it automatically, to avoid modifying
some read-only registers.)
- The editor has 2 different pages. You can toggle between those two
pages by pressing F10
- To execute a command, you just have to type the command on any line
and press return to validate it.
- To repeat the same command without any parameter just press RETURN.
(Useful when disassembling or dumping memory.)
- Escape sets the cursor to the begin of the next line.
- Use the arrows keys to move the cursor arround the screen and scroll up
and down into disassembled code, hex dump etc...
- The editor can work in 2 modes: insert-mode ON or OFF.
When the insert-mode is OFF, you can still insert some blank spaces, by
pressing Tab or SHIFT+Del.
- To insert a whole line press ALT+Tab.
- To clear a single line, press SHIFT+backspace.
- To remove a whole line press ALT+Del.
- The mouse can move the 'snap cursor'. When you click on a word
with the 'snap cursor', the word will be copied at the actual 'real cursor'
position.
@{b}History:@{ub}
- If you need to enter a command you used before, just press CTRL+arrow-up
or CTRL+arrow-down to get the last commands you have executed.
@{b}Expression:@{ub}
- Each time you have to enter a number in a command, you can also enter
an expression.
- You can use a register in an expression.
Examples: h a0+4
d pc
- Use:
% for binary
$ for hexadecimal
# for decimal (default, in @{"hexlock" Link cmd_hexlock} you have to use it)
\\ as prefix for cpu-registers (may mostly be omitted,
in hex mode d0-a7 require it)
[..] for indirect addressing
Example: h [4] will display the ExecBase structure.
- You can specify a size to each number you enter by using an extension.
.b for byte
.w for word (16 bits)
.l for longword (32 bits)
for example:
$134.l
This is useful for functions like memory search or trainer.
- To enter a string with spaces use : '
Example: s 'mod.blue light' $40000 $50000
@EndNode
##-------------------------------------------------------------------
@Node Floppy "HRTmon/Usage/Floppy"
@{b}Floppy@{ub}
To launch HRTmon from a floppy disk you have to create a boot-disk
with @{"HRTmonPrefs" Link HRTmonPrefs}.
This boot-disk makes possible to debug games or demos using 'NON-DOS'
disks. (have also a look at the 'reboot' command)
You have to do the following :
- Boot the HRTmon disk.
- When the screen flashs insert the disk you want to debug.
- Press the left-mouse button to enter HRTmon.
You are now debuging the boot-block of the disk you inserted.
@EndNode
##-------------------------------------------------------------------
@Node HRTmonPrefs "HRTmon/Usage/HRTmonPrefs"
@{b}HRTmonPrefs@{ub}
@{b}Starting HRTmonPrefs:@{ub}
Type HRTmonPrefs from the CLI or simply click on the HRTmonPrefs icon.
@{b}HRTmonPrefs options:@{ub}
@{b}Address@{ub}
Enter the address where you want HRTmon to be located.
This address must be entered in hexadecimal.
If you don't have any idea where to locate HRTmon then type in this
address: $1d0000
@{b}Repeat key delay@{ub}
Change the repeat key delay of HRTmon. (Default = 15)
@{b}AllocABS@{ub}
When HRTmon is installed the memory used will automatically be
allocated through the AllocABS function of exec.library.
This behaviour can be turned off by this switch.
@{b}AutoAlloc@{ub}
If you don't want to specify yourself the address field just
activate this option. HRTmon will try to find out by itself the
best address. (This option works at best with Kickstart 3.0 or higher,
but you can also use it with Kickstart lower than 3.0)
@{b}Insert mode as default@{ub}
Editor will use 'insert' mode as default. (You can still toggle
the mode with the F2 key)
@{b}Right-Mouse Enter@{ub}
Select this option if you want to enter HRTmon by pressing on
your right mouse button. If you don't select this option or the
the Key Enter option, then the only way to enter HRTmon will be
the @{"level7 button" Link level7}.
@{b}Key Enter@{ub}
Select this option if you want to enter HRTmon by pressing on
the backslash key (on US keyboard). This key is located next to
the backspace key just over the return.
@{b}IDE hardisk@{ub}
Select this option if you have an A1200 or A4000 with an IDE
harddisk and you want to access this disk from HRTmon.
Have also a look at the @{"HD WARNINGS" Link HDwarnings}.
@{b}LoadView Task@{ub}
If selected a special task will be added to restore special
screens correctly (gfx boards, or non 15khz display)
The LoadView call can't be done from an interrupt routine
(here HRTmon), that's why it uses an additional system task.
@{b}Keyboard@{ub}
Select the keyboard you want to use in HRTmon.
@{b}No VBR move@{ub}
Do not relocate the vbr if it was previously set to zero.
(if VBR isn't zero, HRTmon never relocates the VBR)
@{b}Hex mode@{ub}
Activate by default the @{"hexadecimal mode " Link cmd_hexlock}.
@{b}Make Boot-Disk@{ub}
Click this button to create a disk which will load HRTmon at
'address', and allows you to boot from another disk.
(See @{" Floppy disk launch " Link Floppy})
@{b}Install@{ub}
After having checked the Address, and AllocABS options click on
this button to install HRTmon in memory.
@{b}Saving HRTmonPrefs options:@{ub}
Select 'Save' in the preferences menu.
@EndNode
##-------------------------------------------------------------------
@Node HDwarnings "HRTmon/HD warnings"
@{b}Hard Disk Warnings !@{ub}
When accessing a partition from HRTmon you have to follow the following
rule:
- After having saved a file to your harddisk using HRTmon. You should
perform a RESET of your computer before accessing this partition again
from the AmigaDOS or Workbench side. But you can perform as many access
you want from HRTmon.
If you don't follow this rule you might corrupt the files saved from
HRTmon and you will need to perform a repair of your partition using
Disksalv of QuarterBackTools or any similar program, but you won't loose
any file already on your HD !
Instead of reseting your computer you can also perform a 'diskchange' of
the partition. (This is an AmigaDOS command)
example:
Get into a Shell or the CLI and type:
DiskChange hd0:
So the AmigaDOS will see the modifications of the disk made by HRTmon.
@EndNode
##-------------------------------------------------------------------
@Node Enter "HRTmon/Usage/Enter"
@{b}ENTER@{ub}
To enter HRTmon, simply press your @{"level7" Link Level7} button or
the right-mouse button if you have selected the Right-Mouse Enter in
@{"HRTmonPrefs" Link HRTmonPrefs} or the BackSlash key also depending
of your settings in @{"HRTmonPrefs" Link HRTmonPrefs}.
If the @{b}keyboard@{ub} doesn't work in HRTmon press the @{b}right@{ub}
mouse button. (It shouldn't happen very often.)
@{b}HINTS:@{ub}
HRTmon uses the VBR register to get transparent.
If you can't enter a demo or game, than try to trace the startup-code
and modify every instruction concerning the VBR instruction.
@EndNode
##-------------------------------------------------------------------
@Node Commands "HRTmon/Usage/Commands"
@{b}COMMANDS@{ub}
@{b}List of commands :@{ub}
@{"r " Link cmd_r} view or edit CPU registers
@{"a " Link cmd_a} assemble 680x0
@{"d " Link cmd_d} disassemble/assemble 680x0
@{"h " Link cmd_h} hex dump/modify memory
@{"n " Link cmd_n} ascII dump of memory
@{"e " Link cmd_e} dump/modify custom registers
@{"type " Link cmd_type} type from memory
@{"c " Link cmd_c} copy memory
@{"q " Link cmd_q} compare memory
@{"o " Link cmd_o} fill memory
@{"ce " Link cmd_ce} exchange memory
@{"f " Link cmd_f} find
@{"fi " Link cmd_fi} find instruction
@{"fs " Link cmd_fs} find string
@{"cop " Link cmd_cop} find copperlist
@{"p " Link cmd_p} enter the graphic searcher
@{"b " Link cmd_b} set or remove breakpoint (view all)
@{"bj " Link cmd_bj} set or remove JSR breakpoint
@{"bd " Link cmd_bd} remove all breakpoints
@{"mw " Link cmd_mw} set/remove/view memory watch
@{"mwd " Link cmd_mwd} delete all memory watch
@{"t " Link cmd_t} trace
@{"ta " Link cmd_ta} trace till address reached
@{"debug " Link cmd_debug} switch debug mode on/off
@{"drive " Link cmd_drive} change current drive
@{"motor " Link cmd_motor} switch drive motor on
@{"format " Link cmd_format} format FFS disk
@{"qformat " Link cmd_qformat} quick format FFS disk
@{"diskchk " Link cmd_diskchk} check a floppy disk
@{"ide " Link cmd_ide} get information from IDE drives
@{"part " Link cmd_part} list all partitions
@{"dir " Link cmd_dir} dir
@{"cd " Link cmd_cd} change current directory
@{"l " Link cmd_l} load file
@{"s " Link cmd_s} save file
@{"sp " Link cmd_sp} save the actual picture
@{"makedir " Link cmd_makedir} makedir
@{"del " Link cmd_del} delete a file
@{"copy " Link cmd_copy} copy a file
@{"rs " Link cmd_rs} read sectors from disk
@{"ws " Link cmd_ws} write sectors to disk
@{"bb " Link cmd_bb} calculate boot-block checksum
@{"la " Link cmd_la} load all
@{"sa " Link cmd_sa} save all
@{"sac " Link cmd_sac} save all compressed
@{"d2f " Link cmd_d2f} read a floppy and save it as a file
@{"f2d " Link cmd_f2d} read a file and save it as a floppy
@{"ts " Link cmd_ts} trainer start
@{"tsd " Link cmd_tsd} deep trainer start
@{"tf " Link cmd_tf} trainer find
@{"output " Link cmd_output} redirect output to memory
@{"af " Link cmd_af} assemble 65816
@{"df " Link cmd_df} disassemble 65816
@{"fif " Link cmd_fif} find instruction 65816
@{"clear " Link cmd_empty} clear all memory and reboot
@{"reboot " Link cmd_empty} reboot and keep HRTmon resident
@{"pal " Link cmd_empty} set PAL display
@{"ntsc " Link cmd_empty} set NTSC display
@{"31k " Link cmd_31k} set 31Khz display (Productivity,...)
@{"led " Link cmd_empty} switch power led on/off
@{"? " Link cmd_eval} evaluate expression
@{"excep " Link cmd_empty} show exception vectors
@{"x " Link cmd_x} exit HRTmon
@{"kill " Link cmd_kill} kill HRTmon
@{"hexlock " Link cmd_hexlock} choose dec/hex as default
@{b} List of special keys :@{ub}
@{"F1 " Link cmd_empty} clear screen
@{"F2 " Link cmd_empty} toggle insert mode on/off
@{"F6 " Link cmd_empty} toggle 65802/65816 CPU mode (for disassemble)
@{"F7 " Link cmd_f7} enter and exit tracer
@{"F10 " Link cmd_empty} toggle betwen page 1 and 2
@{"ESC " Link cmd_empty} break the actual command
@{"HELP" Link cmd_empty} show commands list
@{b} See also :@{ub} @{"The Editor" Link Editor}
@EndNode
##-------------------------------------------------------------------
@Node cmd_31k "HRTmon/Usage/Commands/CMD_31K"
@{b}CMD_31K : Set 31khz display@{ub}
@{b}Syntax:@{ub}
31K
@{b}Notes:@{ub}
- If you have stopped a program which runs on a Productivity, Euro72,
DblPal, DblNtsc screen you can restore the display correctly by
using this command.
@EndNode
##-------------------------------------------------------------------
@Node cmd_d2f "HRTmon/Usage/Commands/CMD_D2F"
@{b}CMD_D2F : Disk to file@{ub}
@{b}Syntax:@{ub}
D2F filename
@{b}Description:@{ub}
- Read all sectors from a 880K floppy disk and write it to a file.
@{b}Notes:@{ub}
- Can also be used to generate .adf file for UAE
@EndNode
##-------------------------------------------------------------------
@Node cmd_f2d "HRTmon/Usage/Commands/CMD_F2D"
@{b}CMD_F2D : File to disk@{ub}
@{b}Syntax:@{ub}
F2D filename
@{b}Description:@{ub}
- Write all sectors from a 880K floppy disk with data from a file.
(the opposite of the @{"D2F" Link cmd_d2f} command)
@EndNode
##-------------------------------------------------------------------
@Node cmd_fs "HRTmon/Usage/Commands/CMD_FS"
@{b}CMD_FS : Find String@{ub}
@{b}Syntax:@{ub}
fs start end 'string'
@{b}Parameters:@{ub}
start = start address of search
end = end address of search
string = string to search
@{b}Notes:@{ub}
- The search isn't case sensitive.
@EndNode
##-------------------------------------------------------------------
@Node cmd_e "HRTmon/Usage/Commands/CMD_E"
@{b}CMD_E : dump/edit custom registers @{ub}
@{b}Syntax:@{ub}
e offset [newval]
@{b}Parameters:@{ub}
offset = offset of custom register ($100 <=> $dff100)
newval = new value for the custom register
@{b}Notes:@{ub}
- This command replaces the old cmd_esc (for HRTmon 1.x users)
@EndNode
##-------------------------------------------------------------------
@Node cmd_diskchk "HRTmon/Usage/Commands/CMD_DISKCHK"
@{b}CMD_DISKCHK : check disk@{ub}
@{b}Description:@{ub}
- Check a floppy disk for errors
@{b}Syntax:@{ub}
diskchk
@{b}Notes:@{ub}
- Use the @{"DRIVE" Link cmd_drive} command to check a disk in df1:
@EndNode
##-------------------------------------------------------------------
@Node cmd_r "HRTmon/Usage/Commands/CMD_R"
@{b}CMD_R : registers@{ub}
@{b}Description:@{ub}
- View the processor registers, or modify a register.
@{b}Syntax:@{ub}
r
or r reg val
@{b}Parameters:@{ub}
reg = name of register to modify.
val = new value for the register.
@{b}Notes:@{ub}
- register RTS shows you the return address if a RTS is executed.
if the PC points on a RTE instruction, you will see the 'RTE address'.
@EndNode
##-------------------------------------------------------------------
@Node cmd_a "HRTmon/Usage/Commands/CMD_A"
@{b}CMD_A : assemble@{ub}
@{b}Description:@{ub}
- Assemble MC680X0 code into memory.
@{b}Syntax:@{ub}
a address instruction
@{b}Parameters:@{ub}
address = address where the instruction must be assembled.
instruction = MC68000-MC68040/FPU/MMU instruction.
@{b}Notes:@{ub}
- You have to enter the instruction with the new syntax.
Example: move.l d0,(4,a0) correct
move.l d0,4(a0) incorrect
move.l d0,($40000) correct
move.l d0,$40000 incorrect
- You have to enter the instructions in their original forme.
Example: cmpi.w #4,d0 correct
cmp.w #4,d0 incorrect
- If the assemble command succeeds it will automatically print 'a nextaddress'
on the next line.
If you want to stop assembling just press return.
Otherwise type in the next instruction.
- You can also use the @{"D" Link cmd_d} command.
@EndNode
##-------------------------------------------------------------------
@Node cmd_d "HRTmon/Usage/Commands/CMD_D"
@{b}CMD_D : disassemble / assemble@{ub}
@{b}Description:@{ub}
- Disassemble (or assemble) MC680X0 code from memory.
@{b}Syntax:@{ub}
d address [instr]
@{b}Parameters:@{ub}
address = address of the 680x0 code to disassemble.
@{b}Notes:@{ub}
- 8 instructions from 'address' will be disassembled and printed.
@EndNode
##-------------------------------------------------------------------
@Node cmd_h "HRTmon/Usage/Commands/CMD_H"
@{b}CMD_H : hex dump@{ub}
@{b}Description:@{ub}
- Dump memory in hex and ascII, or edit memory.
@{b}Syntax:@{ub}
h address ;hex dump
or h address val.x val.x val.x ... ;modify memory
or h address 'string' ;modify memory
@{b}Parameters:@{ub}
address = address of the memory to dump or to modify
val = new values to write in memory.
x = size of val = b,w,l (default: w)
@{b}Examples:@{ub}
h $40000 10.b $140.w $12345678.l
h $50000 'HRTmon'
@EndNode
##-------------------------------------------------------------------
@Node cmd_n "HRTmon/Usage/Commands/CMD_N"
@{b}CMD_N : ascII dump@{ub}
@{b}Description:@{ub}
- Dump memory in ascII only.
@{b}Syntax:@{ub}
n address
@{b}Parameters:@{ub}
address = address of the memory to dump.
@EndNode
##-------------------------------------------------------------------
@Node cmd_type "HRTmon/Usage/Commands/CMD_TYPE"
@{b}CMD_TYPE@{ub}
@{b}Description:@{ub}
- Type a text in memory in the editor.
@{b}Syntax:@{ub}
type address
@{b}Parameters:@{ub}
address = address of the memory to type.
@{b}Notes:@{ub}
- the memory will be printed in the editor.
A zero will stop the command.
@EndNode
##-------------------------------------------------------------------
@Node cmd_c "HRTmon/Usage/Commands/CMD_C"
@{b}CMD_C@{ub}
@{b}Description:@{ub}
- Copy a block of memory.
@{b}Syntax:@{ub}
c start end dest
@{b}Parameters:@{ub}
start = start address of the block to copy.
end = end address of the block to copy.
dest = destination address for the block.
@EndNode
##-------------------------------------------------------------------
@Node cmd_q "HRTmon/Usage/Commands/CMD_Q"
@{b}CMD_Q@{ub}
@{b}Description:@{ub}
- Compare two blocks of memory to see if they are equals.
@{b}Syntax:@{ub}
q start end start2
@{b}Parameters:@{ub}
start = start address of the block to compare.
end = end address of the block to compare.
start2 = start address of the 2nd block to compare with the first one.
@{b}Notes:@{ub}
- If the two blocks are different, the address of the first byte different
from the 2nd block will be printed.
- If the two areas are equal, the following message will be printed:
'Equal areas.'
@EndNode
##-------------------------------------------------------------------
@Node cmd_o "HRTmon/Usage/Commands/CMD_O"
@{b}CMD_O@{ub}
@{b}Description:@{ub}
- Fill the memory with the same byte.
@{b}Syntax:@{ub}
o start end val
@{b}Parameters:@{ub}
start = start address of the block to fill.
end = end address of the block to fill.
val = value used to fill the block.
@{b}Notes:@{ub}
- 'val' can only be a byte. (If you enter a word or a long it will be
truncated to a byte.)
@EndNode
##-------------------------------------------------------------------
@Node cmd_ce "HRTmon/Usage/Commands/CMD_CE"
@{b}CMD_CE@{ub}
@{b}Description:@{ub}
- Exchange two blocks of memory.
@{b}Syntax:@{ub}
ce start end dest
@{b}Parameters:@{ub}
start = start address of the block to exchange.
end = end address of the block to exchange.
dest = destination address for the exchange.
@{b}Notes:@{ub}
- The two areas will be exchanged.
@EndNode
##-------------------------------------------------------------------
@Node cmd_f "HRTmon/Usage/Commands/CMD_F"
@{b}CMD_F@{ub}
@{b}Description:@{ub}
- Find a sequence of bytes,words,longs in memory.
@{b}Syntax:@{ub}
f start end val.x val.x ...
@{b}Parameters:@{ub}
start = start address for the search.
end = end address for the search.
val = value to find.
x = size (b,w,l)
@{b}Examples:@{ub}
f $f80000 $f90000 $4ef9.w $f800d2.l
@EndNode
##-------------------------------------------------------------------
@Node cmd_fi "HRTmon/Usage/Commands/CMD_FI"
@{b}CMD_FI@{ub}
@{b}Description:@{ub}
- Search for a string in the disassembled (MC680X0) code.
@{b}Syntax:@{ub}
fi start end 'string'
@{b}Parameters:@{ub}
start = start address for the search.
end = end address for the search.
string = string to find.
@{b}Notes:@{ub}
- don't forget to use the new Motorola syntax.
- you can use the * character to replace any character.
- you can also find relative address as the fa command of the
ActionReplay
@{b}Examples:@{ub}
fi $f80000 $f90000 '9a,a*)'
will find for example:
MOVE.W #$7FFF,($9A,A4)
@EndNode
##-------------------------------------------------------------------
@Node cmd_p "HRTmon/Usage/Commands/CMD_P"
@{b}CMD_P@{ub}
@{b}Description:@{ub}
- Enter the graphic searcher
@{b}Syntax:@{ub}
p picno
@{b}Parameters:@{ub}
picno (optional parameter)
@{b}Notes:@{ub}
- First use the @{"COP" Link cmd_cop} command to find
the right copper-list, then use this command
- F10 or ESC : exit this mode.
- arrows keys : to move unlocked plans
- Shift : Fast move
- 1-8 : Lock, Unlock plans
- M : Increase modulo
- N : Decrease modulo
- , : Clear modulo
- Q : Decrease picture width
- W : Increase picture width
- A : Decrease picture height
- S : Increase picture height
- R : Set all bitplans to the same address
- H : Toggle HAM mode on/off
- Help : Switch info panel on/off
- Del : Change colors of info panel
- F1 : Start / stop set height mode
@EndNode
##-------------------------------------------------------------------
@Node cmd_b "HRTmon/Usage/Commands/CMD_B"
@{b}CMD_B@{ub}
@{b}Description:@{ub}
- Set or remove an Illegal breakpoint.
@{b}Syntax:@{ub}