Skip to content

Instantly share code, notes, and snippets.

@Liniya
Last active June 9, 2020 10:12
Show Gist options
  • Save Liniya/46654a8290a972b71a8c3b0e8e0ae805 to your computer and use it in GitHub Desktop.
Save Liniya/46654a8290a972b71a8c3b0e8e0ae805 to your computer and use it in GitHub Desktop.
30 characters wide 8x2 multicolor routine (ZX Spectrum)
; 30 characters wide 8x2 multicolor routine
; by Hikaru/Intense in 2018
; SjASMPlus syntax
; Public Domain
; Screen: screen address (offset 0), e.g. #5800
; Src: address in the source buffer
;
MACRO mMCOLOR Screen,Src
ld sp,Src+8
pop bc
pop de
pop hl
pop af
exx
exa
pop bc
pop de
pop af
pop iy
ld sp,Src
pop hl
ld (Screen+1),hl
pop hl
ld (Screen+3),hl
pop hl
ld (Screen+5),hl
pop hl
ld sp,Screen+25
push iy
push af
push de
push bc
exa
exx
push af
push hl
push de
push bc
exx
push hl
ld sp,Src+24
pop bc
pop de
pop hl
ld sp,Screen+31
push hl
push de
push bc
ENDM
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment