навскидку, можно сделать колдунства:
-1 байтКод:inc d ; dec de ;удалили ld a, c ... dec de ;вставили ld (de), a ; dec de ;удалили
-3 байтаКод:; ld a, b ;удалили .l1 ; цикл по байтам в линии ; push af ;удалили push bc ;вставили ;... ; pop af ;удалили... ; dec a ; jr nz, .l1 ; pop bc ; push bc ; ex de, hl ; ld c, b ; ld b, a pop bc ;вставили... djnz .l1 pop af push af ld c,a ex de, hl
-1 байтКод:rlc (hl) rra ; jr c, .s1 ;удалили... ; add hl,bc ; jr .l0 ;.s1 ; add hl,bc ex af,af' ;вставили... add hl,bc ex af,af' jr nc,.l0
если захотелось слегка ускорить внутренний цикл, то можно так:
+1 байтКод:ld a, 0x80 rlc (hl) rra .l0 ; цикл по байтам add hl,bc rlc (hl) rra ; jr c, .s1 ; add hl,bc ; jr .l0 ;.s1 ; add hl,bc jr nc,.l0 add hl,bc
![]()




Ответить с цитированием
