Add beta2 patch: nullmodem and serial update. Add some more configure tests for OS/2 and Mac OS X
Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@2758
This commit is contained in:
parent
46d89dc3b3
commit
85af8429ac
24 changed files with 3195 additions and 1536 deletions
|
@ -16,7 +16,7 @@
|
|||
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
||||
*/
|
||||
|
||||
/* $Id: dos.cpp,v 1.98 2007-01-08 20:36:53 qbix79 Exp $ */
|
||||
/* $Id: dos.cpp,v 1.99 2007-01-13 08:35:49 qbix79 Exp $ */
|
||||
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
|
@ -30,6 +30,7 @@
|
|||
#include "dos_inc.h"
|
||||
#include "setup.h"
|
||||
#include "support.h"
|
||||
#include "serialport.h"
|
||||
|
||||
DOS_Block dos;
|
||||
DOS_InfoBlock dos_infoblock;
|
||||
|
@ -79,7 +80,27 @@ static Bitu DOS_21Handler(void) {
|
|||
}
|
||||
break;
|
||||
case 0x03: /* Read character from STDAUX */
|
||||
{
|
||||
Bit16u port = real_readw(0x40,0);
|
||||
if(port!=0 && serialports[0]) {
|
||||
// RTS/DTR on
|
||||
IO_WriteB(port+4,0x3);
|
||||
serialports[0]->Getchar(®_al,true, 0xFFFFFFFF);
|
||||
}
|
||||
}
|
||||
break;
|
||||
case 0x04: /* Write Character to STDAUX */
|
||||
{
|
||||
Bit16u port = real_readw(0x40,0);
|
||||
if(port!=0 && serialports[0]) {
|
||||
// RTS/DTR on
|
||||
IO_WriteB(port+4,0x3);
|
||||
serialports[0]->Putchar(reg_dl,true,true, 0xFFFFFFFF);
|
||||
// RTS off
|
||||
IO_WriteB(port+4,0x1);
|
||||
}
|
||||
}
|
||||
break;
|
||||
case 0x05: /* Write Character to PRINTER */
|
||||
E_Exit("DOS:Unhandled call %02X",reg_ah);
|
||||
break;
|
||||
|
|
|
@ -16,7 +16,7 @@
|
|||
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
||||
*/
|
||||
|
||||
/* $Id: dos_devices.cpp,v 1.15 2007-01-08 19:45:39 qbix79 Exp $ */
|
||||
/* $Id: dos_devices.cpp,v 1.16 2007-01-13 08:35:49 qbix79 Exp $ */
|
||||
|
||||
#include <string.h>
|
||||
#include "dosbox.h"
|
||||
|
@ -126,6 +126,10 @@ DOS_File & DOS_File::operator= (const DOS_File & orig) {
|
|||
|
||||
Bit8u DOS_FindDevice(char * name) {
|
||||
/* should only check for the names before the dot and spacepadded */
|
||||
// STDAUX is alias for COM1
|
||||
// A bit of a hack, but no application will probably use stdaux to determine wether a directory exists
|
||||
if (strcasecmp(name, "STDAUX") == 0) name = "COM1";
|
||||
|
||||
char temp[CROSS_LEN];//TODO
|
||||
if(!name || !(*name)) return DOS_DEVICES;
|
||||
strcpy(temp,name);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue