home *** CD-ROM | disk | FTP | other *** search
/ APDL Public Domain 1 / APDL_PD1A.iso / program / hacking / findbl / !ReadMe next >
Encoding:
Text File  |  1991-01-20  |  2.4 KB  |  73 lines

  1. FindBL V1.00     (C) Richard K. Lloyd 1988-1991
  2. ------------
  3.  
  4. Introduction
  5. ------------
  6.  
  7. Although Clares' Toolkit+ is nice for memory editing and searching, the
  8. mnemonic search (*MFind) cannot find all branch or branch-with-link
  9. jumps that branch to one particular memory address. FindBL was specifically
  10. designed to fill this gap.
  11.  
  12. So why do I need FindBL ?
  13. -------------------------
  14.  
  15. When you are disassembling someone else's code, it is often essential to
  16. know where a particular routine gets called or jumped to. This invariably
  17. crops up when attempting to deprotect a commerical program :-)
  18.  
  19. How do I use it ?
  20. -----------------
  21.  
  22. You only need to type in three things:
  23.  
  24. 1) The filename to be loaded (followed by an optional load address in hex),
  25.    but you can avoid a file load simply by pressing RETURN on its own.
  26. 2) The B/BL destination address.
  27. 3) The search start address (default = &8000).
  28.  
  29. FindBL will produce a disassembly of each B/BL instruction that branches to
  30. the destination address you specified. ARM code is used to speed up the search,
  31. so it should never take longer than a couple of seconds.
  32.  
  33. Technical notes
  34. ---------------
  35.  
  36. If the search start address is less than HIMEM, then it will finish at HIMEM.
  37. If you specify a start address >=&3800000, then the search will finish at the
  38. end of the ROM space (assumed to be &3800000+512*1024).
  39. Condition codes (EQ,NE etc.) in the B/BL instructions are ignored.
  40.  
  41. Known problems
  42. --------------
  43.  
  44. * There is a bug with *MemoryI - the 4 bytes of ASCII printed TOTALLY IGNORE
  45.   the *Configure DumpFormat setting and hence may screw up your printer if you
  46.   send the screen output there via CTRL-B/CTRL-C.
  47.  
  48. * Address exceptions may occur if you are clever with the search start address
  49.   (e.g. &1800000). Eventually I will parse the memory regions more nicely
  50.   (when I find out how to do it !).
  51.  
  52. * Because FindBL is mostly in BASIC, then you cannot load a binary at
  53.   &8000 - you must pick a suitably higher address, such as &18000, to load it.
  54.   When I have the time, I may well rewrite FindBL completely in ARM code...
  55.   as a Utility to be run from the RMA.
  56.  
  57. Revision History of FindBL
  58. --------------------------
  59.  
  60. Version 1.00 (January 1991)
  61. ---------------------------
  62.  
  63. * Publicly released for the first time (I think).
  64.  
  65. * Search routine revamped in ARM code - now incredibly quick.
  66.  
  67. * Slightly tidied user interface.
  68.  
  69. Pre-release version (mid-1988)
  70. ------------------------------
  71.  
  72. * Completely in BASIC (and hence SLOW !).
  73.