DECIMAL

: GET_SCREEN_MEM ( -- addr )
  0 0 3 102 SPFUNC          ( Special func Get Video Memory on chan 102 )
  0 <> ABORT" SPFUNC ERROR" ( EXOS error )
  SWAP DROP                 ( Do not need value returned in C )
;

VARIABLE INK

: TEST4
  102 £GRAPHICS             ( So PALETTE uses text chan )
  GREEN INK !
  GET_SCREEN_MEM            ( Screen ptr on stack throughout )
  91 65 DO                  ( Letters A to Z )
    DUP
    960 0 DO                ( One screenful )
      DUP J SWAP 255 S!     ( SPOKE letter { J }, assume seg is FF !  )
      1+                    ( Next screen pos )
    LOOP
    DROP
    25 INK +!               ( Next colour )
    0 0 0 0 0 0             ( Ready for PALETTE - unused colours )
    INK @ 0 PALETTE         ( Set new ink & background )
  LOOP
  DROP
;

