
(c) Савинов Алексей,
г.Кировск, Мурманская обл.

   Данная процедура обеспечивает
вывод на экран символов  двойной
ширины.
145.
     ORG  60000
     ENT
     LD   A,(23296)
DBS  LD   L,A
     LD   H,0
     ADD  HL,HL
     ADD  HL,HL
     ADD  HL,HL
     LD   DE,(23606)
     ADD  HL,DE
     EX   DE,HL
     LD   HL,(23684)
     LD   B,8
     PUSH HL
DBS1 PUSH BC
     PUSH DE
     LD   A,(DE)
     LD   DE,0
     LD   B,8
DBS2 RLCA
     PUSH AF
     RL   E
     RL   D
     POP  AF
     RL   E
     RL   D
     DJNZ DBS2
     LD   (HL),D
     INC  HL
     LD   (HL),E
     DEC  HL
     POP  DE
     INC  H
     INC  DE
     POP  BC
     DJNZ DBS1
     POP  HL
     INC  HL
     INC  HL
     LD   (23684),HL
     RET
2
   Ее дамп:

EA60: 3A 00 5B 6F 26 00 29 29:C6
EA68: 29 ED 5B 36 5C 19 EB 2A:83
EA70: 84 5C 06 08 E5 C5 D5 1A:E1
EA78: 11 00 00 06 08 07 F5 CB:48
EA80: 13 CB 12 F1 CB 13 CB 12:06
EA88: 10 F3 72 23 73 2B D1 24:9D
EA90: 13 C1 10 E1 E1 23 23 22:88
EA98: 84 5C C9 00 00 00 00 00:2B

   Протестировать данную  проце-
дуру можно с  помощью  следующей
программы на BASICе:

10 LOAD "DBLSYM" CODE 60000
20 PRINT AT 5,0
30 LET A$="SAVINOV ALEXEJ"
40 FOR N=1 TO LEN A$
50 POKE 23296,CODE A$(N)
60 RANDOMIZE USR 60000
70 NEXT N

   Следующая процедура обеспечи-
вает "растворение" символов. Она
взята  из  программы  "LODE RUN-
NER".
145.
      ORG  40000
LOOP1 LD   B,8
      LD   DE,0
LOOP2 LD   HL,#4000
      PUSH DE
LOOP3 LD   A,(DE)
      AND  (HL)
      LD   (HL),A
      INC  HL
      INC  DE
      LD   A,H
      CP   #58
      JR   NZ,LOOP3
      PUSH BC
      LD   BC,1    ; PAUSE
      CALL 7997
      POP  BC
      POP  DE
      LD   HL,100
      ADD  HL,DE
      EX   DE,HL
      DJNZ LOOP2
      CALL 3435
      RET
2
  Ее дамп:

9C40: 06 08 11 00 00 21 00 40:5C
9C48: D5 1A A6 77 23 13 7C FE:A0
9C50: 58 20 F6 C5 01 01 00 CD:EE
9C58: 3D 1F C1 D1 21 64 00 19:80
9C60: EB 10 E2 CD 6B 0D C9 00:E7

