home *** CD-ROM | disk | FTP | other *** search
/ EuroCD 3 / EuroCD 3.iso / Programming / Amos / AMOSList-0497 / AMOSLIST / littleexamples.lha / ChangeFont.s next >
Encoding:
Text File  |  1996-01-21  |  1.3 KB  |  70 lines

  1.     opt    c-,o+
  2.     IncDir    "dh1:Assembler/"
  3.     Include    "AMOS/|AMOSPro_Includes.s"
  4.     output    dh1:ChangeFont.o
  5.  
  6. *** Change Font font$,height,style
  7.  
  8. main    move.l    ScOnAd(a5),a1
  9.     move.l    a1,d0
  10.     bne.s    .cont1
  11.     lea    12(a3),a3
  12.     rts
  13. .cont1    move.l    Ec_RastPort(a1),a1
  14.     move.l    52(a1),a1
  15.     move.l    a6,d6
  16.     move.l    T_GfxBase(a5),a6
  17.     jsr    -78(a6)
  18.     move.l    d6,a6
  19.     lea    O_FontTextAttr(pc),a0
  20.     move.l    (a3)+,d0
  21.     move.b    d0,6(a0)
  22.     move.l    (a3)+,d0
  23.     move.w    d0,4(a0)
  24.     move.b    #2,7(a0)
  25.     lea    O_TempBuffer(pc),a1
  26.     move.l    a1,(a0)
  27.     move.l    (a3)+,a0
  28.     move.w    (a0)+,d3
  29.     subq.w    #1,d3
  30. .coplop    move.b    (a0)+,(a1)+
  31.     dbra    d3,.coplop
  32.     cmp.b    #'.',-5(a1)
  33.     beq.s    .skip
  34.     move.b    #'.',(a1)+
  35.     move.b    #'f',(a1)+
  36.     move.b    #'o',(a1)+
  37.     move.b    #'n',(a1)+
  38.     move.b    #'t',(a1)+
  39. .skip    clr.b    (a1)
  40.     move.l    a6,d6
  41.     move.l    4.w,a6
  42.     lea    .dsknam(pc),a1
  43.     moveq.l    #0,d0
  44.     jsr    _LVOOpenLibrary(a6)
  45.     lea    O_DiskFontLib(pc),a0
  46.     move.l    d0,(a0)
  47.     bne.s    .alrdop
  48.     rts
  49. .alrdop    move.l    d0,a6
  50.     lea    O_FontTextAttr(pc),a0
  51.     jsr    _LVOOpenDiskFont(a6)
  52.     move.l    d6,a6
  53.     tst.l    d0
  54.     beq.s    .closup
  55. .allok    move.l    d0,a0
  56.     move.l    ScOnAd(a5),a1
  57.     move.l    Ec_RastPort(a1),a1
  58.     move.l    T_GfxBase(a5),a6
  59.     jsr    _LVOSetFont(a6)
  60. .closup    move.l    O_DiskFontLib(pc),a1
  61.     move.l    4.w,a6
  62.     jsr    _LVOCloseLibrary(a6)
  63.     move.l    d6,a6
  64.     rts
  65. .dsknam    dc.b    'diskfont.library',0
  66.     even
  67. O_TempBuffer    ds.b    80
  68. O_FontTextAttr    ds.b    8
  69. O_DiskFontLib    ds.l    1
  70.