Код:
;!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
; Protection
rom_chk::
ld bc,3fffh
xor a
ld h,a
ld l,a
rc_lp: add a,(hl)
adc a,0
inc hl
rrca
xor 0b9h
dec bc
ld d,a
ld a,b
or c
ld a,d
jr nz,rc_lp
dec a
ret z
ld a,r
ld l,a
ld h,0dch ; is BDOS adress
inc (hl)
and 7fh
ret nz
; Вот тут вроде A=0
ld hl,mes_rck ; загружаем шифросимвол
rc_plp:xor (hl) ; ксорим
inc hl ; след. символ?
call nz,conout ; А это вроде вывод на экран
jr nz,rc_plp ; повторяем
ld a,1
rst 18h
rc_hlt:ld hl,PAL_BUF
ld b,16
rc__1: inc (hl)
inc hl
djnz rc__1
call SET_PAL
ld b,25
ei
rc__2: halt
djnz rc__2
jr rc_hlt
mes_rck:
db 0Dh,16h,0Ah,58h,69h,43h,11h,13h,02h,08h,0Eh,01h,4Ah,0Eh
db 69h,69h,48h,09h,0Dh,18h,11h,01h,4Ah,0Eh,70h,22h,17h,16h
db 00h,53h,72h,17h,16h,16h,11h,74h,54h,1Bh,4Fh,43h,0Ch,01h
db 1Ah,1Dh,07h,1Bh,10h,4Bh,00h,00h,2Eh
;!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
Под db скрывается надпись "I cracked. I halted. Press RESET to continue..."