OpenCores
URL https://opencores.org/ocsvn/zet86/zet86/trunk

Subversion Repositories zet86

[/] [zet86/] [trunk/] [soc/] [bios/] [rombios.c] - Diff between revs 44 and 45

Go to most recent revision | Show entire file | Details | Blame | View Log

Rev 44 Rev 45
Line 9... Line 9...
// $fff5 ; ASCII Date ROM was built - 8 characters in MM/DD/YY
// $fff5 ; ASCII Date ROM was built - 8 characters in MM/DD/YY
// $fffe ; System Model ID
// $fffe ; System Model ID
 
 
#include "rombios.h"
#include "rombios.h"
 
 
 
#define BX_CPU           0
 
 
   /* model byte 0xFC = AT */
   /* model byte 0xFC = AT */
#define SYS_MODEL_ID     0xFC
#define SYS_MODEL_ID     0xFC
 
 
#ifndef BIOS_BUILD_DATE
#ifndef BIOS_BUILD_DATE
#  define BIOS_BUILD_DATE "06/23/99"
#  define BIOS_BUILD_DATE "06/23/99"
Line 958... Line 960...
    jmp halt2_loop
    jmp halt2_loop
ASM_END
ASM_END
    }
    }
}
}
 
 
static char bios_svn_version_string[] = "$Revision: 1.10 $ $Date: 2009-02-19 19:06:56 $";
static char bios_svn_version_string[] = "$Revision: 1.11 $ $Date: 2009-03-02 01:02:32 $";
 
 
//--------------------------------------------------------------------------
//--------------------------------------------------------------------------
// print_bios_banner
// print_bios_banner
//   displays a the bios version
//   displays a the bios version
//--------------------------------------------------------------------------
//--------------------------------------------------------------------------
Line 2099... Line 2101...
  ;; EBDA setup
  ;; EBDA setup
  call ebda_post
  call ebda_post
 
 
  ;; Keyboard
  ;; Keyboard
  SET_INT_VECTOR(0x09, #0xF000, #int09_handler)
  SET_INT_VECTOR(0x09, #0xF000, #int09_handler)
  ;SET_INT_VECTOR(0x16, #0xF000, #int16_handler)
  SET_INT_VECTOR(0x16, #0xF000, #int16_handler)
 
 
  xor  ax, ax
  xor  ax, ax
  mov  ds, ax
  mov  ds, ax
  mov  0x0417, al /* keyboard shift flags, set 1 */
  mov  0x0417, al /* keyboard shift flags, set 1 */
  mov  0x0418, al /* keyboard shift flags, set 2 */
  mov  0x0418, al /* keyboard shift flags, set 2 */
Line 2111... Line 2113...
  mov  0x0471, al /* keyboard ctrl-break flag */
  mov  0x0471, al /* keyboard ctrl-break flag */
  mov  0x0497, al /* keyboard status flags 4 */
  mov  0x0497, al /* keyboard status flags 4 */
  mov  al, #0x10
  mov  al, #0x10
  mov  0x0496, al /* keyboard status flags 3 */
  mov  0x0496, al /* keyboard status flags 3 */
 
 
 
 
  /* keyboard head of buffer pointer */
  /* keyboard head of buffer pointer */
  mov  bx, #0x001E
  mov  bx, #0x001E
  mov  0x041A, bx
  mov  0x041A, bx
 
 
  /* keyboard end of buffer pointer */
  /* keyboard end of buffer pointer */
Line 2184... Line 2185...
  push cx
  push cx
  push dx
  push dx
  push bx
  push bx
  push sp
  push sp
  mov  bx, sp
  mov  bx, sp
 
  sseg
  add  [bx], #10
  add  [bx], #10
 
  sseg
  mov  bx, [bx+2]
  mov  bx, [bx+2]
  push bp
  push bp
  push si
  push si
  push di
  push di
 
 
Line 2281... Line 2284...
;-------------------------------------------------
;-------------------------------------------------
.org 0xe987
.org 0xe987
int09_handler:
int09_handler:
  cli
  cli
  push ax
  push ax
 
 
  in  al, #0x60             ;;read key from keyboard controller
  in  al, #0x60             ;;read key from keyboard controller
  sti
  sti
 
 
  push  ds
  push  ds
  ;pusha ; we do this instead:
  ;pusha ; we do this instead:
 
 
  push ax
  push ax
  push cx
  push cx
  push dx
  push dx
  push bx
  push bx
  push sp
  push sp
  mov  bx, sp
  mov  bx, sp
 
  sseg
  add  [bx], #10
  add  [bx], #10
 
  sseg
  mov  bx, [bx+2]
  mov  bx, [bx+2]
  push bp
  push bp
  push si
  push si
  push di
  push di
 
 
Line 2323... Line 2328...
 
 
int09_process_key:
int09_process_key:
  mov   bx, #0xf000
  mov   bx, #0xf000
  mov   ds, bx
  mov   ds, bx
  call  _int09_function
  call  _int09_function
 
 
int09_done:
int09_done:
  ; popa ; we do this instead:
  ; popa ; we do this instead:
  pop di
  pop di
  pop si
  pop si
  pop bp
  pop bp
Line 2336... Line 2340...
  pop dx
  pop dx
  pop cx
  pop cx
  pop ax
  pop ax
 
 
  pop   ds
  pop   ds
  cli
 
 
 
 
  cli
  pop ax
  pop ax
  iret
  iret
 
 
 
 
;----------
;----------

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.