I've found DOSBOX to be a little wonky. I've used it to run Borland Pascal 7.0 and it was ok, but like I said, wonky.
With today's computers being so fast, you don't need to do direct memory writes for graphics. I did a game or two using them and ported them over to using Lazarus and PTCGraph, PTCMouse and PTCcrt. PTCGraph supports page flipping which I have used in almost all of my arcade-like games (see my signature for the videos). The only thing I haven't tried is a joystick, but I bet there is code out there somewhere for that. Good luck in your project though, it looks like fun.