summaryrefslogtreecommitdiff
path: root/system/shard-x86-at/7/src/NILCHAN.ASM
blob: 1ff0108562c5dbec842fbc3000c24ccaf92e4edb (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
;***************************************************************************
;*======= Copyright (C) 1985,86 Martin Schoenbeck, Spenge =================*
;*                                                                         *
;*   Dieses Modul definiert alle Routinen, die benoetigt werden, wenn      *
;*   ein Kanal nicht existiert oder bestimmte Funktionen nicht durch-      *
;*   fuehren kann.                                                         *
;*                                                                         *
;***************************************************************************

     device nilchannel

     dtcbroutines iocontrol
          routine 1,devicetype
          routine 2,frout_ok
          routine 5,nil_size
          routine -1,unknowncontrol
     dtcbroutines control32
          routine -1,no_channel_setup
     dtcbroutines blockin
     dtcbroutines blockout
          routine -1,no_blockinout
     dtcbparams nil_output,0            ;output; niltype

nil_size:
     mov al,0
     mov cx,0
     ret

unknowncontrol:
no_blockinout:
     mov cx,-1
     ret

frout_ok:
     mov cx,200                    ;200 bytes frei
     stc                           ;puffer leer
     ret

no_baud:
no_bits:
no_flow:
no_channel_setup:
     mov cx,1
     ret

nil_output:
     stc
     ret                           ;alle zeichen uebernommen

devicetype:
     mov ch,0                      ;hoeherwertige teil immer null
     mov cl,shard:(si+devtype)     ;type dazu
     ret