org 256 PAPER equ 0h INK equ 255 ;hexa label colors for each palette item mov ah,15 int 10h xor ah,ah push ax mov al,13h int 10h ;--- PaletteBuild mov di,palarray ;classic ;) push di xor ax,ax mov dx,03c8h out dx,al inc dx mov cx,16*3 ;fading 16 items, each with 3-RGB outer mul cl ;random gen rcr ax,cl or ax,1111110011111111b ;hi-bright difference in 2's cmpl push cx ;lo-white (~255 ;) mov cl,16 ;16 bright clones inner stosb ;pure white add di,16*3-1 ;next clone add al,ah ;add difference loop inner pop cx sub di,767 ;next item loop outer pop si mov ch,3 rep outsb ;--- PaletteView mov ax,0a000h mov es,ax xor di,di mov ch,16 secd mov cl,16 main push cx mov cl,12 filt mov ah,20 fill stosb dec ah jnz fill add di,300 dec cl jnz filt add di,-5*320+1 mov dh,2 cycl mov cl,4 ror al,cl mov dl,al and al,0fh mov cx,580h shr al,1 jc mbon mov cl,8h mbon mul ch add ax,font mov bx,ax mov ah,cl wert mov cl,4 ror ah,cl dadv mov al,PAPER test [bx],ah jz npix mov al,INK npix stosb ror ah,1 dec cl jnz dadv inc bx add di,316 dec ch jnz wert mov al,dl add di,-5*320+4 dec dh jnz cycl add di,-7*320+11 pop cx inc al dec cl jnz main add di,11*320 dec ch jnz secd ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; mov ah,8 int 21h pop ax int 10h ret ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; font db 044h,0ach,0a4h,0a4h,044h,04ch,0a2h,024h db 042h,0ech,08eh,08ch,0a2h,0e2h,02ch,06eh db 0c2h,0a2h,0a4h,044h,044h,0aah,04ah,0a6h db 04ch,04ch,0aah,0ach,0eah,0ach,04ch,0aah db 08ah,0aah,04ch,0eeh,088h,0cch,088h,0e8h ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; palarray ;storage array, 768 items