mirror of
https://git.FreeBSD.org/src.git
synced 2024-12-17 10:26:15 +00:00
Whee. Fix two bugs which ended up cancelling each other out.
apm_setup.s was storing apm_cs16_base and apm_cs32_base addresses in each others slots, and apm.c was reversing the result so the bugs cancelled out, but the code looked wrong. No functional differences unfortunately. Submitted by: dave edmondson <davided@sco.com>
This commit is contained in:
parent
a0e34b44a2
commit
6774cdb846
Notes:
svn2git
2020-12-20 02:59:44 +00:00
svn path=/head/; revision=17068
@ -14,7 +14,7 @@
|
||||
*
|
||||
* Sep, 1994 Implemented on FreeBSD 1.1.5.1R (Toshiba AVS001WD)
|
||||
*
|
||||
* $Id: apm.c,v 1.43 1996/06/04 17:50:28 nate Exp $
|
||||
* $Id: apm.c,v 1.44 1996/06/18 01:21:54 bde Exp $
|
||||
*/
|
||||
|
||||
#include "apm.h"
|
||||
@ -700,8 +700,8 @@ apmattach(struct isa_device *dvp)
|
||||
sc->active = 0;
|
||||
|
||||
/* setup APM parameters */
|
||||
sc->cs16_base = (apm_cs32_base << 4) + APM_KERNBASE;
|
||||
sc->cs32_base = (apm_cs16_base << 4) + APM_KERNBASE;
|
||||
sc->cs16_base = (apm_cs16_base << 4) + APM_KERNBASE;
|
||||
sc->cs32_base = (apm_cs32_base << 4) + APM_KERNBASE;
|
||||
sc->ds_base = (apm_ds_base << 4) + APM_KERNBASE;
|
||||
sc->cs_limit = apm_cs_limit;
|
||||
sc->ds_limit = apm_ds_limit;
|
||||
|
@ -12,7 +12,7 @@
|
||||
*
|
||||
* Sep., 1994 Implemented on FreeBSD 1.1.5.1R (Toshiba AVS001WD)
|
||||
*
|
||||
* $Id: apm_setup.s,v 1.5 1995/02/17 02:22:23 phk Exp $
|
||||
* $Id: apm_setup.s,v 1.6 1996/03/11 06:48:48 nate Exp $
|
||||
*/
|
||||
|
||||
#include "apm.h"
|
||||
@ -166,9 +166,9 @@ _apm_setup:
|
||||
|
||||
movl %eax, PADDR(_apm_version)
|
||||
movl %ebx, PADDR(_apm_cs_entry)
|
||||
movw %cx, PADDR(_apm_cs32_base)
|
||||
shrl $16, %ecx
|
||||
movw %cx, PADDR(_apm_cs16_base)
|
||||
shrl $16, %ecx
|
||||
movw %cx, PADDR(_apm_cs32_base)
|
||||
movw %dx, PADDR(_apm_ds_base)
|
||||
movw %si, PADDR(_apm_cs_limit)
|
||||
shrl $16, %esi
|
||||
|
@ -14,7 +14,7 @@
|
||||
*
|
||||
* Sep, 1994 Implemented on FreeBSD 1.1.5.1R (Toshiba AVS001WD)
|
||||
*
|
||||
* $Id: apm.c,v 1.43 1996/06/04 17:50:28 nate Exp $
|
||||
* $Id: apm.c,v 1.44 1996/06/18 01:21:54 bde Exp $
|
||||
*/
|
||||
|
||||
#include "apm.h"
|
||||
@ -700,8 +700,8 @@ apmattach(struct isa_device *dvp)
|
||||
sc->active = 0;
|
||||
|
||||
/* setup APM parameters */
|
||||
sc->cs16_base = (apm_cs32_base << 4) + APM_KERNBASE;
|
||||
sc->cs32_base = (apm_cs16_base << 4) + APM_KERNBASE;
|
||||
sc->cs16_base = (apm_cs16_base << 4) + APM_KERNBASE;
|
||||
sc->cs32_base = (apm_cs32_base << 4) + APM_KERNBASE;
|
||||
sc->ds_base = (apm_ds_base << 4) + APM_KERNBASE;
|
||||
sc->cs_limit = apm_cs_limit;
|
||||
sc->ds_limit = apm_ds_limit;
|
||||
|
@ -12,7 +12,7 @@
|
||||
*
|
||||
* Sep., 1994 Implemented on FreeBSD 1.1.5.1R (Toshiba AVS001WD)
|
||||
*
|
||||
* $Id: apm_setup.s,v 1.5 1995/02/17 02:22:23 phk Exp $
|
||||
* $Id: apm_setup.s,v 1.6 1996/03/11 06:48:48 nate Exp $
|
||||
*/
|
||||
|
||||
#include "apm.h"
|
||||
@ -166,9 +166,9 @@ _apm_setup:
|
||||
|
||||
movl %eax, PADDR(_apm_version)
|
||||
movl %ebx, PADDR(_apm_cs_entry)
|
||||
movw %cx, PADDR(_apm_cs32_base)
|
||||
shrl $16, %ecx
|
||||
movw %cx, PADDR(_apm_cs16_base)
|
||||
shrl $16, %ecx
|
||||
movw %cx, PADDR(_apm_cs32_base)
|
||||
movw %dx, PADDR(_apm_ds_base)
|
||||
movw %si, PADDR(_apm_cs_limit)
|
||||
shrl $16, %esi
|
||||
|
Loading…
Reference in New Issue
Block a user