home *** CD-ROM | disk | FTP | other *** search
/ 8bitfiles.net/archives / archives.tar / archives / canada-remote-systems / geos / drivers / shelldc2.sda / EPSON24PING (.txt) < prev    next >
GEOS ConVerT  |  2019-04-13  |  5KB  |  261 lines

  1. Epson24pinG
  2. PRG formatted GEOS file V1.0
  3. Star NX-10
  4. OP V2.0 or higherIN.LNK
  5. EPSON24PINGC.LNK
  6. BLASTER'S CONVERTER V2.5
  7. EP8PIN3PASS.LNK
  8. OKIMATE20G
  9. Write Image V2.0
  10. geoWrite    V2.1
  11. .Source code for graphics part of Shell Printer Driver for 24-pin smoothing.
  12. SmoothTable:
  13. SmoothCorner:
  14.     .byte    $00,$00,$00,$00,$00,$00,$00,$00
  15.     .byte    $00,$00,$00,$00,$00,$00,$00,$00
  16.     .byte    $33,$00,$32,$00,$00,$00,$00,$00
  17.     .byte    $32,$00,$20,$00,$00,$00,$00,$00
  18.     .byte    $FF,$FF,$FF,$FF,$F7,$F7,$FF,$F7
  19.     .byte    $FF,$7F,$FF,$FF,$FF,$7F,$FF,$7F
  20.     .byte    $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
  21.     .byte    $FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF
  22. @CardsWid
  23. e    =80
  24. @CardsLon
  25. g    =118
  26.     .include    ShellZero
  27. @RotNeigh
  28. borhood:
  29.     .block    1
  30. @CardsWid
  31. e    =80
  32. @CardsLon
  33. g    =118
  34.     .include    ShellZero
  35. @RotNeigh
  36. borhood:
  37.     .block    1
  38. @MSNeighb
  39. orhood:
  40.     .block    1
  41. @LSNeighb
  42. orhood:
  43.     .block    1
  44. @LeftBotB
  45.     .block    1
  46. @LeftMidB
  47.     .block    1
  48. @LeftTopB
  49.     .block    1
  50. @RightBot
  51. Byte:
  52.     .block    1
  53. @RightMid
  54. Byte:
  55.     .block    1
  56. @RightTop
  57. Byte:
  58.     .block    1
  59.     .psect
  60. @InitForP
  61. rint:
  62. @PrintPag
  63.     ldx    #mBeginPage
  64.     jsr    SendMessage
  65. 100$    jsr    DoScan
  66.     lda    #12
  67.     jsr    MoveDown
  68.     lda    PrintMode
  69.     cmp    #$3e
  70.     bcs    100$
  71.     ldx    #mEndPage
  72.     jsr    SendMessage
  73. @DoScan
  74.     ldx    #mBeginScan
  75.     jsr    SendMessage
  76.     ldy    #1
  77. 100$    jsr    OpenWindow
  78. 200$    jsr    DoSmooth
  79.     jsr    ShiftPixels
  80.     bne    200$
  81.     ldy    ActiveColumn
  82.     cpy    #81
  83.     bcc    100$
  84.     ldx    #mEndScan
  85.     jsr    SendMessage
  86. @DoSmooth
  87.     ldx    #1
  88. DSLoop:    lda    Window-1,x
  89.     ror    a
  90.     ror    temp
  91.     lda    Window+23,x
  92.     rol    a
  93.     ror    temp
  94.     rol    a
  95.     ror    temp
  96.     lda    Window+24,x
  97.     rol    a
  98.     rol    a
  99.     ror    temp
  100.     lda    Window+25,x
  101.     rol    a
  102.     rol    a
  103.     ror    te
  104. @DoSmooth
  105.     ldx    #1
  106. DSLoop:    lda    Window-1,x
  107.     ror    a
  108.     ror    temp
  109.     lda    Window+23,x
  110.     rol    a
  111.     ror    temp
  112.     rol    a
  113.     ror    temp
  114.     lda    Window+24,x
  115.     rol    a
  116.     rol    a
  117.     ror    temp
  118.     lda    Window+25,x
  119.     rol    a
  120.     rol    a
  121.     ror    temp
  122.     ror    a
  123.     ror    temp
  124.     lda    Window+1,x
  125.     ror    a
  126.     ror    temp
  127.     lda    Window,x
  128.     ror    a
  129.     ror    temp
  130.     lda    temp
  131.     jsr    Rotate0    ;Top smoothing.
  132.     and    SmoothCorner,y
  133.     cmp    #1
  134.     rol    LeftBotByte
  135.     rol    LeftMidByte
  136.     rol    LeftTopByte
  137.     lda    RotNeighborhood
  138.     jsr    Rotate1
  139.     and    SmoothCo
  140.     jsr    Rotate0    ;Top smoothing.
  141.     and    SmoothCorner,y
  142.     cmp    #1
  143.     rol    LeftBotByte
  144.     rol    LeftMidByte
  145.     rol    LeftTopByte
  146.     lda    RotNeighborhood
  147.     jsr    Rotate1
  148.     and    SmoothCorner,y
  149.     cmp    #1
  150.     rol    LeftBotByte
  151.     rol    LeftMidByte
  152.     rol    LeftTopByte
  153.     lda    RotNeighborhood
  154.     jsr    Rotate1
  155.     and    SmoothCorner,y
  156.     cmp    #1
  157.     lda    RotNeighborhood
  158.     jsr    Rotate1
  159.     and    SmoothCorner,y
  160.     cmp    #1
  161.     rol    RightBotByte
  162.     rol    RightMidByte
  163.     rol    RightTopByte
  164.     rol    RightBotByte
  165.     rol    RightMidByte
  166.     rol    RightTopByte
  167.     cpx    #13
  168.     bcc    DSLoop
  169.     lda    LeftTopByte
  170.     jsr    SendByte
  171.     lda    LeftMidByte
  172.     jsr    SendByte
  173.     lda    LeftBotByte
  174.     jsr    SendByte
  175.     lda    RightTopByte
  176.     jsr    SendByte
  177.     lda    RightMidByte
  178.     jsr    SendByte
  179.     lda    RightBotByte
  180.     jsr    SendByte
  181. @Rotate1
  182. @Rotate1
  183. :    asl    a
  184.     adc    #0
  185.     asl    a
  186.     adc    #0
  187. @Rotate0
  188. :    sta    RotNeighborhood
  189.     lda    Window+24,x
  190.     rol    a
  191.     lda    RotNeighborhood
  192.     ror    a
  193.     lsr    a
  194.     lsr    a
  195.     sta    MSNeighborhood
  196.     lda    RotNeighborhood
  197.     and    #7
  198.     lda    MaskTable,y
  199.     sta    LSNeighborhood
  200.     ldy    MSNeighborhood
  201. @MaskTabl
  202.     .byte    128,64,32,16,8,4,2,1
  203. @ColorFil
  204. ters:
  205.     .word    $0001,$0000    ;black on white.
  206. @MessageO
  207. ffset:
  208.     .byte    <(m00-messages)
  209.     .byte    <(m01-messages)
  210.     .byte    <
  211. @MessageO
  212. ffset:
  213.     .byte    <(m00-messages)
  214.     .byte    <(m01-messages)
  215.     .byte    <(m02-messages)
  216.     .byte    <(m03-messages)
  217.     .byte    <(m04-messages)
  218.     .byte    <(m05-messages)
  219.     .byte    <(m06-messages)
  220.     .byte    <(m07-messages)
  221. @MessageL
  222. ength:
  223.     .byte    <(m01-m00)
  224.     .byte    <(m02-m01)
  225.     .byte    <(m03-m02)
  226.     .byte    <(m04-m03)
  227.     .byte    <(m05-m04)
  228.     .byte    <(m06-m05)
  229.     .byte    <(m07-m06)
  230.     .byte    <(m08-m07)
  231. @messages
  232. @mBeginPa
  233. ge    =0
  234. m00:    .byte    ESC,"@"
  235. @mBeginSc
  236. an    =1
  237. m01:    .byte    SP,SP,SP,SP,SP,ESC,"*",39
  238.     .word    1280
  239. @mEndScan
  240. m02:    .byte    CR,ESC,"J",24
  241. @mEndPage
  242. m03:    .byte    FF
  243. @mBeginTe
  244. xt    =4
  245. m04:    .byte    ESC,"@"
  246. @mEndText    
  247. m05:    .byte    FF
  248. @mTextLin
  249. eFeed    =6
  250. m06:    .byte    CR,LF
  251. @mSetNLQ
  252. m07:    .byte    ESC,"x",1
  253. HEpson 24-pin 90 dpi driver
  254. Page: PAGE
  255. Printed on: DATE    At: TIME    File: Epson24pinG
  256. ------------------------------------------------
  257. HEpson 24-pin 90 dpi driver
  258. Page: PAGE
  259. Printed on: DATE    At: TIME    File: Epson24pinG
  260. ----------------------------------------------------------------------------------------------
  261.