Add OPL4 playback and analyzer support
This commit is contained in:
@@ -0,0 +1,38 @@
|
||||
1 .module wc_strset
|
||||
2 .area _CODE
|
||||
3 .globl _wc_strset
|
||||
00000000 4 _wc_strset::
|
||||
00000000 DD E5 [15] 5 push ix
|
||||
00000002 DD 21 00 00 [14] 6 ld ix, #0
|
||||
00000006 DD 39 [15] 7 add ix, sp
|
||||
8
|
||||
00000008 DD 7E 04 [19] 9 ld a, 4(ix) ; c (из-за push ix)
|
||||
0000000B DD E1 [14] 10 pop ix
|
||||
11
|
||||
12 ; записываем первый байт
|
||||
0000000D 77 [ 7] 13 ld (hl), a
|
||||
14
|
||||
0000000E 42 [ 4] 15 ld b, d
|
||||
0000000F 4B [ 4] 16 ld c, e
|
||||
17
|
||||
18 ; len == 1 → всё
|
||||
00000010 0B [ 6] 19 dec bc
|
||||
00000011 78 [ 4] 20 ld a, b
|
||||
00000012 B1 [ 4] 21 or c
|
||||
00000013 28 05 [12] 22 jr z, _wc_strset_done
|
||||
23
|
||||
24 ; DE = HL + 1
|
||||
00000015 E5 [11] 25 push hl
|
||||
00000016 D1 [10] 26 pop de
|
||||
00000017 13 [ 6] 27 inc de
|
||||
28
|
||||
29 ; BC = len - 1 уже
|
||||
30
|
||||
00000018 ED B0 [21] 31 ldir
|
||||
32
|
||||
0000001A 33 _wc_strset_done:
|
||||
34 ; очистка стека
|
||||
0000001A C1 [10] 35 pop bc
|
||||
0000001B 33 [ 6] 36 inc sp
|
||||
0000001C C5 [11] 37 push bc
|
||||
0000001D C9 [10] 38 ret
|
||||
Reference in New Issue
Block a user