|
From: folkert <fo...@va...> - 2023-07-27 18:44:23
|
Hi, I'm working on an 8088 emulator test set. The idea is to create a set of tests to validate a new 8088 emulator. Altough not complete, it tests quite a bit of the instruction-set of that processor. I always also verify the test set against a real processor (via a PI86) so the test should be fine. But I (still) would like to run it against other emulators, to see if I missed anything or so. So indeed, I would like to run it against Bochs. The test set consists of about 6500 assembly (generated) files. They are assembled into a .bin-file that should be loaded at 0000:0000 and then start to run either at 0000:0000 or (preferably) at 0000:0800. When it encounters a problem, it invokes HLT. If all went well, it sets SI to $a5ee, sends $ff to i/o-port $80 and then invokes HLT as well. This page: https://stackoverflow.com/questions/6142925/how-can-i-use-bochs-to-run-assembly-code describes how to start a .bin from the command-line, so that hurdle is taken. Yet one is left: how can I get bochs to: - terminate when it reaches a HLT instruction - log something when it either an i/o port is touched or anything else I could do from code? Thanks. regards p.s. the test set is at https://github.com/folkertvanheusden/8086-processor-emulation-validation-testset and is released in the public domain |