Code: Select all
  if(a>=0x77C0 && a<0x8000 && b>0 && b<128) // Screen
  {
     a -= 0x77C0;
     print(b,a%78,a/79);
  }
Moderator: Shaos
Code: Select all
  if(a>=0x77C0 && a<0x8000 && b>0 && b<128) // Screen
  {
     a -= 0x77C0;
     print(b,a%78,a/79);
  }
 
														
 
														 
														 
														 
														Code: Select all
mov a,a - A event
mov b,b - B event
mov c,c - C event
mov d,d - D event
mov e,e - E event
mov h,h - save BC bytes from HL to filename DE
mov l,l - save lower 32K to the file with incremental name 
Code: Select all
{pseudo-86rk:v0.1}                                                            
                                                                              
radio-86rk                                                                    
-->                                                                           
{a-event:0::::}                                                               
{b-event:12:0:::}                                                             
{a-event:34:22:::}  
{halt}                                                                        
{from-last-a:7}                                                               
{from-last-b:29}                                                              
{bye}    
 
														 
														
 
														 
														 
														Code: Select all
./pseudo-86rk-stdout -s100 cputest.bin 
{pseudo-86rk:v0.1}
radio-86rk
-->
DIAGNOSTICS II V1.2 - CPU TEST
COPYRIGHT (C) 1981 - SUPERSOFT ASSOCIATES
ABCDEFGHIJKLMNOPQRSTUVWXYZ
CPU IS 8080/8085
BEGIN TIMING TEST
END TIMING TEST
CPU TESTS OK
-->
{bye}
 
														Ты про 8080EX1.COM? Он всё-таки немного другой по коду т.к. печатает маленькими буквами и я свой класс Process8080 ещё в 2012 году поправил, чтобы проходил все тесты:b2m wrote:Какая-то странная особенность. Тот-же самый тест, с тем же кодом эмуляции процессора, но в среде CP/M, работает без проблем, ошибок не выявляет.
Code: Select all
*********************************
File "8080EX1.COM" loaded, size 4608
8080 instruction exerciser (KR580VM80A CPU)
dad <b,d,h,sp>................  OK
aluop nn......................  OK
aluop <b,c,d,e,h,l,m,a>.......  OK
<daa,cma,stc,cmc>.............  OK
<inr,dcr> a...................  OK
<inr,dcr> b...................  OK
<inx,dcx> b...................  OK
<inr,dcr> c...................  OK
<inr,dcr> d...................  OK
<inx,dcx> d...................  OK
<inr,dcr> e...................  OK
<inr,dcr> h...................  OK
<inx,dcx> h...................  OK
<inr,dcr> l...................  OK
<inr,dcr> m...................  OK
<inx,dcx> sp..................  OK
lhld nnnn.....................  OK
shld nnnn.....................  OK
lxi <b,d,h,sp>,nnnn...........  OK
ldax <b,d>....................  OK
mvi <b,c,d,e,h,l,m,a>,nn......  OK
mov <bcdehla>,<bcdehla>.......  OK
sta nnnn / lda nnnn...........  OK
<rlc,rrc,ral,rar>.............  OK
stax <b,d>....................  OK
Tests complete
Jump to 0000 from 0137
Code: Select all
1c1,9
< 00000000  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
---
> 00000000  c3 6c f8 ff ff 79 fe 02  ca 1c 00 fe 09 ca 39 00  |.l...y........9.|
> 00000010  cd 15 f8 21 45 00 cd 18  f8 c3 6c f8 4b 79 fe 61  |...!E.....l.Ky.a|
> 00000020  fa 2b 00 fe 7b f2 2b 00  d6 20 4f 2a 48 00 71 23  |.+..{.+.. O*H.q#|
> 00000030  36 00 22 48 00 cd 09 f8  c9 1a fe 24 c8 4f cd 1d  |6."H.......$.O..|
> 00000040  00 13 c3 39 00 0a 0d 00  00 40 ff ff ff ff ff ff  |...9.....@......|
> 00000050  ff ff ff ff ff ff ff ff  ff ff ff ff ff ff ff ff  |................|
> *
> 00000080  21 00 40 cd 18 f8 c3 6c  f8 ff ff ff ff ff ff ff  |!.@....l........|
> 00000090  ff ff ff ff ff ff ff ff  ff ff ff ff ff ff ff ff  |................|
200c208
< 00000d70  a9 0d f9 fb 2a 03 01 22  99 0d 21 a5 0d 7e e6 ff  |....*.."..!..~..|
---
> 00000d70  a9 0d f9 00 2a 03 01 22  99 0d 21 a5 0d 7e e6 ff  |....*.."..!..~..|
284,289c292,293
< 000012b0  05 df 1b 2d 02 ef 8d a0  0a e2 78 d7 0d d2 ee 4e  |...-......x....N|
< 000012c0  04 83 54 39 03 b3 c2 a7  67 26 61 d0 60 16 f7 49  |..T9....g&a.`..I|
< 000012d0  69 47 4d 3e 6e 77 db ae  d1 6a 4a d9 d6 5a dc 40  |iGM>nw...jJ..Z.@|
< 000012e0  df 0b 66 37 d8 3b f0 a9  bc ae 53 de bb 9e c5 47  |..f7.;....S....G|
< 000012f0  b2 cf 7f 30 b5 ff e9 bd  bd f2 1c ca ba c2 8a 53  |...0...........S|
< 00001300
---
> 000012b0  05 df 1b 2d 02 ef 8d                              |...-...|
> 000012b7
Я специально взял тот самый .bin и откусил первые 256 байт, чтобы получить .comShaos wrote:Ты про 8080EX1.COM? Он всё-таки немного другой по коду
 
														Xм, странно - значит косячит процедура подмены вызовов CP/M?b2m wrote:Я специально взял тот самый .bin и откусил первые 256 байт, чтобы получить .comShaos wrote:Ты про 8080EX1.COM? Он всё-таки немного другой по коду