ZXNet эхоконференция «code.zx»


тема: тест



от: Oleg Grigoriev
кому: All
дата: 09 May 2000

Пусть враги твои, All, умрут без сыновей!

тест на вражеский компьютер. написан Илуватар знает когда. на правильной
тачке моргает синим, на неправильной - красным.
оно, хе-хе, в шторме. :)

── { Begin } ─────────────────────────────────────────── { emultest.C } ──
;тест на эмулятор
;
DRIVE EQU #5CF6
IM2TB EQU #BE00

ORG #6000:DI
LD SP,#6000
LD HL,#0000:PUSH HL
LD HL,#3D2F:PUSH HL

LD HL,IM2TB,A,H,I,A
LD (HL),H:INC (HL),L:JR NZ,$-#03
INC H:LD (HL),H,L,H
LD (HL),#C9
IM 2

LD A,(DRIVE):OR #3C:CALL TOPRFF

LD A,#08:CALL TOPR1F,INTRQ

LOOP LD D,#00,A,#C3,HL,RETURN
LD (#5CC2),A,(#5CC3),HL
LD (RETURN+#01),SP
LD HL,#2740:PUSH HL
LD HL,#0039
.7 PUSH HL
LD HL,#2A53:PUSH HL
LD A,#08,C,#1F
JP #3D2F

RETURN LD SP,#0000
CALL INTRQ
LD A,#20:CALL TOPR1F,INTRQ

LD A,(#5CCD)
BIT 0,A
LD A,#02:JR Z,ENEMY
DEC A
ENEMY CALL FILL
XOR A:CALL FILL

LD B,#0F
WAIT EI:HALT
XOR A:IN (#FE):CPL:AND #1F
RET NZ
DJNZ WAIT
JR LOOP

;***************************************
;
FILL PUSH AF,BC
EI:HALT
OUT (#FE)
ADD A,A,A,A,A,A
LD (FILL1+#01),SP
LD B,#30,D,A,E,A,SP,#5B00
.8 PUSH DE
DJNZ $-#08
FILL1 LD SP,#0000
POP BC,AF
RET

;***************************************
;
INTRQ LD IX,#3EF5:CALL DOS:DI:RET
TOPR1F LD C,#1F:JR TOPR
TOPRFF LD C,#FF
TOPR LD IX,#2A53
DOS PUSH IX:JP #3D2F
── { End } ───────────────────────────────────────────── { emultest.C } ──

[ WBR, Oleg. ]
[ 11:28 9 May XXXV A.S. ]

от: Oleg Grigoriev
кому: Kirill Frolov
дата: 14 May 2000

Пусть враги твои, Kirill, умрут без сыновей!

9 May 2000 at 18:48, Kirill Frolov ═> Oleg Grigoriev:

OG>> тест на вражеский компьютер. написан Илуватар знает когда. на
OG>> правильной тачке моргает синим, на неправильной - красным.
OG>> оно, хе-хе, в шторме. :)

KF> В R80 мигает синим.

сакс. дубль два. может отличаться бОльшей неустойчивостью - стоит собирать
статистику.

── { Begin } ─────────────────────────────────────────── { emultest.C } ──
;тест на эмулятор
;
DRIVE EQU #5CF6
IM2TB EQU #BE00

ORG #6000:DI
; LD SP,#6000
; LD HL,#0000:PUSH HL
; LD HL,#3D2F:PUSH HL

LD HL,IM2TB,A,H,I,A
LD (HL),H:INC (HL),L:JR NZ,$-#03
INC H:LD (HL),H,L,H
LD (HL),#C9
IM 2

LD A,(DRIVE):OR #3C:CALL TOPRFF
LD A,#08:CALL TOPR1F,INTRQ

LD B,#0A
EI:HALT
DJNZ $-#02

LOOP XOR A:LD (ENEMY+#01),A
CALL TEST1
CALL TEST2
CALL TEST3
LD A,#20:CALL TOPR1F,INTRQ

ENEMY LD A,#00
OR A:LD A,#01:JR Z,$+#03:INC A
CALL FILL
XOR A:CALL FILL

LD B,#0A
WAIT EI:HALT
XOR A:IN (#FE):CPL:AND #1F
RET NZ
DJNZ WAIT
JR LOOP



;***************************************
TEST1 LD D,#00,A,#C3,HL,TEST1R
LD (#5CC2),A,(#5CC3),HL
LD (TEST1R+#01),SP
LD HL,#2740:PUSH HL
LD HL,#2A53:PUSH HL
LD A,#08,C,#1F
JP #3D2F
TEST1R LD SP,#0000
CALL INTRQ
LD A,(#5CCD):AND #01
LD B,A
LD A,(ENEMY+#01):OR B
LD (ENEMY+#01),A
RET

;***************************************
TEST2 LD D,#00,A,#C3,HL,TEST2R
LD (#5CC2),A,(#5CC3),HL
LD (TEST2R+#01),SP
LD HL,#2740:PUSH HL
LD B,#08,HL,#2A55
PUSH HL:DJNZ $-#01
LD HL,#2A53:PUSH HL
LD A,#08,C,#1F
JP #3D2F
TEST2R LD SP,#0000
CALL INTRQ
LD A,(#5CCD):AND #01:XOR #01
LD B,A
LD A,(ENEMY+#01):OR B
LD (ENEMY+#01),A
RET

;***************************************
TEST3 LD D,#00,A,#C3,HL,TEST3R
LD (#5CC2),A,(#5CC3),HL
LD (TEST3R+#01),SP
LD HL,#2740:PUSH HL
LD B,#00,HL,#2A55
PUSH HL:DJNZ $-#01
LD HL,#2A53:PUSH HL
LD A,#08,C,#1F
JP #3D2F
TEST3R LD SP,#0000
CALL INTRQ
LD A,(#5CCD):AND #01
LD B,A
LD A,(ENEMY+#01):OR B
LD (ENEMY+#01),A
RET


;***************************************
;
FILL PUSH AF,BC
EI:HALT
OUT (#FE)
ADD A,A,A,A,A,A
LD (FILL1+#01),SP
LD B,#30,D,A,E,A,SP,#5B00
.8 PUSH DE
DJNZ $-#08
FILL1 LD SP,#0000
POP BC,AF
RET

;***************************************
;
INTRQ LD IX,#3EF5:CALL DOS:DI:RET
TOPR1F LD C,#1F:JR TOPR
TOPRFF LD C,#FF
TOPR LD IX,#2A53
DOS PUSH IX:JP #3D2F


── { End } ───────────────────────────────────────────── { emultest.C } ──

KF> В R80 пока всё pаботает слишком пpавильно, даже и не поймёшь эмулятоp
KF> это или что... А CP/M-ка виснет :-) Hо пpавда вместе с эмулятоpом и
KF> писюком ;-(

ничего, прорвёмся. :) у меня есть ещё один рубеж - забить на попытки учесть
скорп и ужесточить временные интервалы. правда, на скорпе придётся турбой
щёлкать... пока не хочу.

[ WBR, Oleg. ]
[ 21:38 14 May XXXV A.S. ]




Темы: Игры, Программное обеспечение, Пресса, Аппаратное обеспечение, Сеть, Демосцена, Люди, Программирование

Похожие статьи:
Нововведения - Оболочка - что нового.
Новости STEVER'а - О совете SySop'ов.
Письма - письма читателей.
Part 1 - Editorial and news.
Вступление - от ORC GOD.

В этот день...   25 апреля