home *** CD-ROM | disk | FTP | other *** search
/ ticalc.org / ticalc_org_rev_b.iso / archives / 92 / asm / source / fargo / hexdump.asm < prev    next >
Encoding:
Assembly Source File  |  2001-07-01  |  1.9 KB  |  124 lines

  1.     include    "tios.h"
  2.     include    "flib.h"
  3.     include    "hexlib.h"
  4.     xdef    _main
  5.     xdef    _comment
  6.  
  7. ;*****************************************************
  8.  
  9. _main:
  10.     jsr    flib::clr_scr
  11.  
  12. main_loop:
  13.     move.l    addr(pc),a0
  14.     move.l    #0,d1
  15.     move.w    #14,d3
  16. hex_loop_1:
  17.     move.l    a0,d0
  18.     move.l    #0,d2
  19.     move.w    #5,d4
  20.     jsr    hexlib::put_hex
  21.     add.l    #1,d2
  22.     move.w    #1,d4
  23.     move.w    #7,d5
  24. hex_loop_2:
  25.     move.b    (a0),d0
  26.     jsr    hexlib::put_hex
  27.     add.l    #1,a0
  28.     add.l    #1,d2
  29.     dbf.w    d5,hex_loop_2
  30.     add.l    #1,d1
  31.     dbf.w    d3,hex_loop_1
  32.  
  33.     tst.w    tios::kb_globals+$1C
  34.     beq    main_loop
  35.     move.w    tios::kb_globals+$1E,d0
  36.     clr.w    tios::kb_globals+$1C
  37.  
  38.     cmp.w    #$0152,d0
  39.     beq    key_up
  40.     cmp.w    #$0158,d0
  41.     beq    key_down
  42.     cmp.w    #$1152,d0
  43.     beq    key_up2
  44.     cmp.w    #$1158,d0
  45.     beq    key_down2
  46.     cmp.w    #$2152,d0
  47.     beq    key_up3
  48.     cmp.w    #$2158,d0
  49.     beq    key_down3
  50.     cmp.w    #$4152,d0
  51.     beq    key_up4
  52.     cmp.w    #$4158,d0
  53.     beq    key_down4
  54.  
  55.     cmp.w    #$0108,d0
  56.     beq    exit
  57.  
  58.     move.w    d0,d1
  59.     and.w    #$0FFF,d1
  60.     sub.w    #$010C,d1
  61.     bcs    main_loop
  62.     cmp.w    #8,d1
  63.     bcc    main_loop
  64.     lea    bookmark(pc),a0
  65.     lsl.w    #2,d1
  66.     and.w    #$F000,d0
  67.     beq    goto_bookmark
  68. make_bookmark:
  69.     move.l    addr(pc),0(a0,d1.w)
  70.     bra    main_loop
  71. goto_bookmark:
  72.     move.l    0(a0,d1.w),addr
  73.     bra    main_loop
  74.  
  75. key_up:
  76.     sub.l    #$8,addr
  77.     bra    main_loop
  78. key_down:
  79.     add.l    #$8,addr
  80.     bra    main_loop
  81. key_up2:
  82.     sub.l    #$100,addr
  83.     bra    main_loop
  84. key_down2:
  85.     add.l    #$100,addr
  86.     bra    main_loop
  87. key_up3:
  88.     sub.l    #$1000,addr
  89.     bra    main_loop
  90. key_down3:
  91.     add.l    #$1000,addr
  92.     bra    main_loop
  93. key_up4:
  94.     sub.l    #$10000,addr
  95.     bra    main_loop
  96. key_down4:
  97.     add.l    #$10000,addr
  98.     bra    main_loop
  99.  
  100. exit:
  101.     rts
  102.  
  103. ;*****************************************************
  104. ; miscellaneous program data
  105. ;*****************************************************
  106.  
  107. addr:
  108.     dc.l    0
  109. bookmark:
  110.     dc.l    0
  111.     dc.l    0
  112.     dc.l    0
  113.     dc.l    0
  114.     dc.l    $005340
  115.     dc.l    $0078B4
  116.     dc.l    $020000
  117.     dc.l    $400000
  118.  
  119. _comment    dc.b    "Hexadecimal memory viewer",0
  120.  
  121. ;*****************************************************
  122.  
  123.     end
  124.