гггг. осталось академикам наполнять контент..
гггг. осталось академикам наполнять контент..
С любовью к вам, Yandex.Direct
Размещение рекламы на форуме способствует его дальнейшему развитию
маленькая шпаргалка по z80.
А заюзать ZXPKWIKI не?
ТАК БЕГОМ ТУДА!!!
усем.
По-моему, новую Вики не стоит делать, лучше или вклиниться в существующую (speccy.info), а еще лучше создать отдельный сайт на JavaScript например. Нужен только каталог процедур, с поиском по полям.
Каждая процедура должна содержать поля:
- название на русском и английском языках (хорошо бы, чтобы и названия меток внутри процедуры не совпадали с метками из других процедур);
- список входных параметров (регистров);
- список выходных параметров (регистров);
- какие регистры портятся;
- тип оптимизации (по быстродействию, по памяти, не оптимизирована);
- размер в байтах;
- время выполнения в тактах.
А описание железа вообще ни к чему.
лол, что не на CMS?
это для ленивого поколения ЕГЭ? Busy в статьях себя вообще не утруждает.
шутите? кому оптимизация нужна? запилите отдельную статью проотсчет такотв и оптимизацию, будет достаточно.
бугога. конструктор для школоты?
никто не предложил, никто не обозначил заинтересованности.
еще одна процедура построения окружности.
в приложении -статьи самого автора.
PHP код:;circle Busy
device zxspectrum128
ORG #8000
tabbod = #6000
begin
run call mkbod
xor a
slucka push af
ld bc,#6080
call circle
pop af
add a,#03
cp #60
jr c,slucka
stu jr stu
ret
circle ld d,a
or a
jp z,bod
inc a
ld h,b
ld l,c
ld (xy14+1),hl
ld (xy15+1),hl
ld (xy16+1),hl
ld (xy17+1),hl
ld xl,a
dec a
ld e,a
ld a,d
add a,b
ld b,a
push de
call bod
pop de
ld a,b
sub d
sub d
ld b,a
push de
call bod
pop de
ld a,b
add a,d
ld b,a
ld a,c
add a,e
ld c,a
push de
call bod
pop de
ld a,c
sub e
sub e
ld c,a
call bod
ld d,#00
ld h,d
ld l,d
ld e,xl
ld ix,#ff
e130 inc d
ld c,d
ld b,#00
add hl,bc
ld a,h
add a,a
jr nz,e130
push hl
add hl,hl
add hl,hl
xor a
ld b,a
ld c,e
sbc hl,bc
pop hl
jr c,e130
ld b,#00
ld c,e
sbc hl,bc
dec e
push hl
call eelin
pop hl
ld xl,d
xor a
xor xh
jr z,e130
ret
eelin inc xl
ld a,xl
cp e
jr z,eeln1
ld a,e
cp d
jr nc,eeln1
ld xh,d
ret
eeln1 push de
push ix
xy14 ld bc,#5555
ld a,b
add a,e
ld b,a
push de
call ccnn1
pop de
xy15 ld bc,#5555
ld a,b
sub e
ld b,a
call ccnn1
pop ix
pop de
ld a,d
cp e
jr nz,eeln2
cp xl
ret z
eeln2 push de
push ix
xy16 ld bc,#5555
ld a,c
add a,e
ld c,a
push de
call ccnn2
pop de
xy17 ld bc,#5555
ld a,c
sub e
ld c,a
call ccnn2
pop ix
pop de
ret
ccnn1 push bc
push de
ld a,c
sub d
ex af,af
ld a,c
sub xl
ld d,a
ex af,af
ld c,a
call rovno
pop de
pop bc
ld a,c
add a,d
ld d,a
ld a,c
add a,xl
ld c,a
jp rovno
ccnn2 push bc
push de
ld a,b
sub d
ex af,af
ld a,b
sub xl
ld d,a
ex af,af
ld b,a
call zvislo
pop de
pop bc
ld a,b
add a,d
ld d,a
ld a,b
add a,xl
ld b,a
jp zvislo
;----------------------
bod ld h, high tabbod;>
ld l,b
ld d,(hl)
inc h
ld a,(hl)
inc h
ld l,c
or (hl)
ld e,a
inc h
ld a,(de)
bodset xor (hl)
ld (de),a
ret
;--------------------------
hitbod = high tabbod ;>
rovno ld a,d
cp c
jr nc,rov01
ld d,c
ld c,a
rov01 ld h,hitbod+2
ld l,c
ld a,(hl)
dec h
ld l,b
or (hl)
dec h
ld h,(hl)
ld l,a
ld a,c
and #f8
ld e,a
ld a,d
and #f8
cp e
jr nz,r2byte
ld a,c
and #07
ld b,a
ld a,#ff
jr z,rov02
rov03 srl a
djnz rov03
rov02 ld c,a
rov99 ld a,d
and #07
ld b,a
ld a,#80
jr z,rov04
rov05 scf
rra
djnz rov05
rov04 and c
ooset1 xor (hl)
ld (hl),a
ret
r2byte sub e
rrca
rrca
rrca
ld e,a
ld a,c
and #07
ld b,a
ld a,#ff
jr z,ooset2
rov06 srl a
djnz rov06
ooset2 xor (hl)
ld (hl),a
ld b,c
ld c,#ff
rov40 inc l
dec e
jr z,rov99
ld a,c
ooset3 xor (hl)
ld (hl),a
jr rov40
zvislo ld a,d
cp b
jr nc,zv2
ld d,b
ld b,a
zv2 ld a,d
sub b
ret c
inc a
ld d,a
ld h,hitbod+3
ld l,c
ld e,(hl)
dec h
ld a,(hl)
dec h
ld l,b
or (hl)
dec h
ld h,(hl)
ld l,a
ld a,b
zvis cpl
and #07
inc a
ld b,a
zv1 ld a,e
ooset4 xor (hl)
ld (hl),a
inc h
dec d
ret z
djnz zv1
ld b,#08
ld a,#20
add a,l
ld l,a
jr c,zv1
ld a,#f8
add a,h
ld h,a
jr zv1
;--------------------form
mkbod ld ix,tabbod
ld hl,#4000
mkbb1 ld (ix+#00),h
inc xh
ld (ix+#00),l
dec xh
call dole
inc xl
jr nz,mkbb1
inc xh
inc xh
mkbb2 ld a,xl
rrca
rrca
rrca
and #1f
ld (ix+#00),a
ld a,xl
cpl
add a,a
add a,a
add a,a
or #c7
ld (mkbb3+1),a
xor a
mkbb3 set 1,a
inc xh
ld (ix+#00),a
dec xh
inc xl
jr nz,mkbb2
ret
dole inc h
ld a,h
and #07
ret nz
ld a,#20
add a,l
ld l,a
ret c
ld a,#f8
add a,h
ld h,a
ret
end
display /d,end-begin
savesna "test.sna",begin
Ну дык смысл всей этой библиотеки, чтобы любой спектрумист любого уровня взял оттуда любую процедуру, вставил в свой проект как есть, без переделок, и всё заработало. Без всяких танцев с бубном и без поисков чужих глюков.
Кстати, нужен какой-то контроль процедур, помещаемых на сайт, на полность и работоспособность. А то в статьях авторы любят сокращать и ссылаться на какие-то якобы известные другие процедуры из другой прессы.
А чего, в Вики не всех допускают?
---------- Post added at 14:40 ---------- Previous post was at 14:31 ----------
это пусть тоже будет. Это же не принуждает ни к чему автора процедуры, а просто указывает для ее пользователя. Например, сейчас я в пошаговой стратегии и Эрудите пишу процедуры, оптимизированные по размеру, т.к. много всего нужно впихнуть, а быстродействие не важно (кроме алгоритма чтения словаря в Эрудите). А вот в ZXOOM наоборот, места не жалел ради быстродействия. В большинстве дем тоже нужна оптимизация по быстродействию.
Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)