Text preview for : 19790620_Z-IOP_1.5_ls.pdf part of xerox 19790620 Z-IOP 1.5 ls xerox notetaker memos 19790620_Z-IOP_1.5_ls.pdf



Back to : 19790620_Z-IOP_1.5_ls.pdf | Home

Z-IOP.ls 20-Jun-79 10:23:38 Page 1



1
2 BCA/l/e Z-IOP.bca;pnew z-iop.mb@P@
3 Current version is version 1.5
4
5 last change:
6
7 moved interrupt vectors to RAM to allow disk
8 programs to use interrupts not used by rom
9
10
11 This file contains the code that will be resident
12 in the lOP rom with BOOTABlE disks--Interim arrangement
13 Author: Bruce Horn
14 last changed: June 18, 1979 3:19 PM
15
16
17 .Predefine "8086Predefs.sr"
18
19 .Get "Z-IOPRamDefs.bca" ;Ram locations ...
1 Z-IOPRamDefs.bca
2
3 This file contains the lOP Ram locations and symbols.
4 The lOP can address ram beginning at 1000H
5 All state is booted from the disk
6
7 Author: Bruce Horn
8 last changed: June 18, 1979 3: 04 PM
9
10
11 ;RAM definitions fol1ow--
12
13 ;The following is PRIVATE to the 10 processor
14
1000 15 IOPRam= 1000 ;IOP Ram begins at this address
16
1000 17 B itsGone= IOPRam ;Kbd Handler temp
1002 18 Count= BitsGone+2. ;temp
1004 19 Mask= Count+2. ;temp
1006 20 Offset= Mask+2. ;temp {Meta keys modify this}
1008 21 Templ= Offset+2. ;Temp for interrupt routine
100A 22 IRR= Templ+2. ;1nterrupt mask (IntsOn/Off)
100C 23 Portl00= 1RR+2. ;portlOO settings
100E 24 Port60= Portl00+2. ;Port60 settings
1010 25 Port20= Port60+2. ;port20 settings
1012 26 KbdOffset= Port20+2. ;current byte address on input
1014 27 OldKbdData= KbdOffset+2. ;6 word keyboard input, old
28
1020 29 RO= OldKbdData+12. ;various temporary registers
1022 30 Rl= RO+2. ; for rom to use
1024 31 R2= R1+2.
1026 32 R3= R2+2.
1028 33 BitE rrors= R3+2. ;following 8 bytes are bit errors
34 ;from mem test
35
1030 36 .ShowNewCursor= BitErrors+8. ;Other useful rom routines
1032 37 . DisplayOn= .ShowNewCursor+2 .
1034 38 .DisplayOff= .DisplayOn+2.
1036 39 . WaitBug= -.DisplayOff+2 .
1038 40 . Wa itNoBug= .WaitBug+2.
103A 41 .1ntsOn= .WaitNoBug+2.
103C 42 . 1ntsOff= .1ntsOn+2 .
103E 43 . SetP60= .lntsOff+2 .
1040 44 . 10Init= .SetP60+2 .
1042 45 DStatus= .IOInit+2. ;disk status on fail
1044 46 JumpTo= DStatus+2. ; Byte/Seg' add ress of in it rout i ne
1048 47 NextDisk= JumpTo+4. ;another disk after this one?
104A 48 ReTry= NextDisk+2. ;Retry counts/sector rlw
104C 49 BeginAdr= ReTry+2. ;Begin loading address
104E 50 BeginSeg= BeginAdr+2. ;Begin loading segment
1050 51 OldAdr= BeginSeg+2. ;last address since R/W sector
1052 52 OldSeg= 01dAdr+2. ; Last segment
1054 53 Blocks= OldSeg+2. ;Blocks to read
1056 54 Track= Blocks+2. ;Current track
1057 55 Sector= Track+l. ;Current sector
1058 56 . Buffer= Sector+l . ;location of disk buffer
105A 57 Buffer= .Buffer+2. ;128 char disk buffer
Z-IOP.ls 20-Jun-79 10:23:38 Page 2



58
59 ;The following is PUBLIC information--The emulator processor can
60 ;address this information, and possibly alter i t
61
2000 62 EPRam= 2000 ;EP can address ram starting here
63
64 ;Routines available in ROM
65
2000 66