Mercurial > repos > blastem
comparison z80.cpu @ 1764:6cc2fa6a1955
A couple more instruction timing fixes in new Z80 core
author | Michael Pavone <pavone@retrodev.com> |
---|---|
date | Wed, 20 Feb 2019 00:16:27 -0800 |
parents | 7e97d820b491 |
children | 1dc718581aac |
comparison
equal
deleted
inserted
replaced
1763:7e97d820b491 | 1764:6cc2fa6a1955 |
---|---|
381 | 381 |
382 dd 01110RRR ld_to_ix | 382 dd 01110RRR ld_to_ix |
383 z80_calc_index ix | 383 z80_calc_index ix |
384 mov wz scratch2 | 384 mov wz scratch2 |
385 mov main.R scratch1 | 385 mov main.R scratch1 |
386 cycles 5 | |
386 ocall write_8 | 387 ocall write_8 |
387 | 388 |
388 fd 01110RRR ld_to_iy | 389 fd 01110RRR ld_to_iy |
389 z80_calc_index iy | 390 z80_calc_index iy |
390 mov wz scratch2 | 391 mov wz scratch2 |
391 mov main.R scratch1 | 392 mov main.R scratch1 |
393 cycles 5 | |
392 ocall write_8 | 394 ocall write_8 |
393 | 395 |
394 00110110 ld_to_hl_immed | 396 00110110 ld_to_hl_immed |
395 z80_fetch_immed | 397 z80_fetch_immed |
396 z80_store_hl | 398 z80_store_hl |
985 add 1 hlt wz | 987 add 1 hlt wz |
986 adc src hlt hlt | 988 adc src hlt hlt |
987 update_flags SZYHVXN0C | 989 update_flags SZYHVXN0C |
988 mov hlt l | 990 mov hlt l |
989 lsr hlt 8 h | 991 lsr hlt 8 h |
992 cycles 7 | |
990 | 993 |
991 ed 01001010 adc_hl_bc | 994 ed 01001010 adc_hl_bc |
992 local hlw 16 | 995 local hlw 16 |
993 local bcw 16 | 996 local bcw 16 |
994 meta hlt hlw | 997 meta hlt hlw |
1111 add 1 hlt wz | 1114 add 1 hlt wz |
1112 sbc src hlt hlt | 1115 sbc src hlt hlt |
1113 update_flags SZYHVXN1C | 1116 update_flags SZYHVXN1C |
1114 mov hlt l | 1117 mov hlt l |
1115 lsr hlt 8 h | 1118 lsr hlt 8 h |
1119 cycles 7 | |
1116 | 1120 |
1117 ed 01000010 sbc_hl_bc | 1121 ed 01000010 sbc_hl_bc |
1118 local hlw 16 | 1122 local hlw 16 |
1119 local bcw 16 | 1123 local bcw 16 |
1120 meta hlt hlw | 1124 meta hlt hlw |
1367 #or add some syntax to force a certain size on an operation so they are unnecessary | 1371 #or add some syntax to force a certain size on an operation so they are unnecessary |
1368 mov scratch1 tmp | 1372 mov scratch1 tmp |
1369 add 1 tmp tmp | 1373 add 1 tmp tmp |
1370 update_flags SZYHVXN0 | 1374 update_flags SZYHVXN0 |
1371 mov tmp scratch1 | 1375 mov tmp scratch1 |
1376 cycles 1 | |
1372 z80_store_hl | 1377 z80_store_hl |
1373 | 1378 |
1374 dd 00110100 inc_ixd | 1379 dd 00110100 inc_ixd |
1375 local tmp 8 | 1380 local tmp 8 |
1376 z80_fetch_index ix | 1381 z80_fetch_index ix |
1459 #or add some syntax to force a certain size on an operation so they are unnecessary | 1464 #or add some syntax to force a certain size on an operation so they are unnecessary |
1460 mov scratch1 tmp | 1465 mov scratch1 tmp |
1461 sub 1 tmp tmp | 1466 sub 1 tmp tmp |
1462 update_flags SZYHVXN1 | 1467 update_flags SZYHVXN1 |
1463 mov tmp scratch1 | 1468 mov tmp scratch1 |
1469 cycles 1 | |
1464 z80_store_hl | 1470 z80_store_hl |
1465 | 1471 |
1466 dd 00110101 dec_ixd | 1472 dd 00110101 dec_ixd |
1467 local tmp 8 | 1473 local tmp 8 |
1468 z80_fetch_index ix | 1474 z80_fetch_index ix |