home *** CD-ROM | disk | FTP | other *** search
/ ftp.barnyard.co.uk / 2015.02.ftp.barnyard.co.uk.tar / ftp.barnyard.co.uk / cpm / walnut-creek-CDROM / MBUG / MBUG051.ARC / BASLORES.MAC < prev    next >
Text File  |  1979-12-31  |  2KB  |  54 lines

  1. ;BASLORES.MAC       SOURCE FILE FOR BASLORES.BAS  BY MARK BISHOP v21/6/86.
  2. ;LOADS MICROBEE/TANDY TRS-80 LORES GRAPHICS ;INTO PCG, FOR USE UNDER 
  3. ;MICROSOFT BASIC 80, MBASIC.COM WITH 24 LINE SCREEN 
  4. ;EACH PCG CHR HAS 11 BYTES, ;c/w MW BASIC 16.   
  5. ;BYTES 12-16 ARE UNUSED. LORES GRAPHICS ARE 3 ROWS * 2 COLUMNS.   
  6. ; -----------------   
  7. ; | bit 0 | bit 1 |   EACH 'BOX' IS SET IF THE
  8. ; |---------------|   BIT IN THE CHR NO. IS
  9. ; | bit 2 | bit 3 |   ALSO SET. BIT 6 IGNORED,
  10. ; |---------------|   BIT 7 ALWAYS SET.
  11. ; | bit 4 | bit 5 |
  12. ; -----------------
  13. ;ROWS 1/3 IN PCG CHR= 4 BYTES, ROW 2= 3 BYTES.
  14.     .z80
  15.     org    100h        ;RELOCATEABLE
  16. ;
  17. PCGRAM    EQU    0F800H        ;START OF PCG RAM
  18.     LD    HL,PCGRAM
  19.     LD    C,0C0H        ;FOR CHRS 128-191
  20. ;CHANGE TO 80H TO REPEAT GRAPHICS IN CHRS 128-255
  21. ;
  22. LP1:    LD    E,C        ;ONLY BITS 0-5
  23.                 ;AFFECT CHR
  24.     LD    D,03H        ;COUNTER. 3 ROWS
  25. LP2:    XOR    A            ;A=NEXT PCG BYTE
  26.     BIT    0,E        
  27.     JR    Z,LP3        ;IF BIT 0 SET,
  28.     OR    0F0H        ;SET LEFT COLUMN
  29. LP3:    BIT    1,E
  30.     JR    Z,LP4        ;IF BIT 1 SET,
  31.     OR    0FH        ;SET RIGHT COLUMN    
  32. LP4:    BIT    0,D        ;ROW 1 OR 3 ?
  33.     JR    NZ,LP5        ;YES, JR
  34.     LD    B,3        ;ROW 2 HAS 3 BYTES    
  35.     JR    LP6
  36. LP5:    LD    B,4        ;ROW 1/3, 4 BYTES
  37. LP6:    LD    (HL),A        ;CHR BYTES TO PCG
  38.     INC    HL
  39.     DJNZ    LP6        ;LOOP TILL DONE.
  40.     RRC    E        ;READY TO TEST NXT
  41.     RRC    E        ;TWO BITS IN CHR.
  42.     DEC    D        ;CHR FINISHED ?
  43.     JR    NZ,LP2        ;NO, JR
  44.     XOR    A        ;ZERO A
  45.     LD    B,5        ;FILL LINES 12-16
  46. LP7:    LD    (HL),A        ;OF PCG CHR WITH 0
  47.     INC    HL
  48.     DJNZ    LP7        ;LOOP TILL DONE
  49.     INC    C        ;ALL CHRS FINISHED ?
  50.     JR    NZ,LP1        ;NO, JR
  51.     RET            ;YES, RET
  52. ;
  53.     END
  54.   BIT 7