]> wirehaze git hosting - MS-DOS.git/blob - v4.0/src/MAPPER/SCNTRY.ASM

wirehaze git hosting

MZ is back!
[MS-DOS.git] / v4.0 / src / MAPPER / SCNTRY.ASM
1 ;
2 page 60,132
3 ;
4 title CP/DOS DosSetCtryCode mapper
5 ;
6 dosxxx segment
7 assume cs:dosxxx,ds:dosxxx,es:dosxxx,ss:dosxxx
8 ;
9 ;**********************************************************************
10 ;*
11 ;* MODULE: dossetctrycode
12 ;*
13 ;* FILE NAME: dos049.asm
14 ;*
15 ;* CALLING SEQUENCE:
16 ;*
17 ;* push@ dword country code
18 ;* call dossetctrycode
19 ;*
20 ;* MODULES CALLED: PC-DOS Int 21h, ah=38h, set country code
21 ;*
22 ;*********************************************************************
23
24 public dossetctrycode
25 .sall
26 include macros.inc
27
28 str struc
29 Old_bp dw ?
30 Return dd ?
31 Ccode dd ? ; country code
32 str ends
33
34 dossetctrycode proc far
35 Enter dossetctrycode ; push registers
36
37 lds si,[bp].ccode
38 mov ax,word ptr [si] ; get country code
39 mov cx,255
40 cmp ax,cx ; check for country code >= 255
41 jl okay ; branch if less
42
43 mov bx,ax ; if so, load into bx
44 mov al,cl ; and set flag
45 okay: mov dx,0ffffh ; Set DX
46
47 mov ah,38h ; DOS INT function code
48 int 21h ; set country information
49 jc exit ; branch if error
50
51 sub ax,ax ; set good return
52 exit: mexit ; pop registers
53 ret size str - 6 ; return
54
55 dossetctrycode endp
56 dosxxx ends
57 end