annotate 3rdparty/utils/winfo/winfo.doc @ 3210:6353bb024571

Created makefile and defsfile for NoCan RAMMER module driver and descriptor Updated rammer.asm in the NoCan driver folder to build the NoCan version of the Driver Updated r0.asm file to create the 6MB version of the descriptor. The makefile creates a disk image with two sets of the required drivers for the 6309 and 6809's in their respective module folders. /NITROS9/6309_L2/MODULES/RBF for the 6309 files and /NITROS9/6809_L2/MODULES/RBF for the 6809 files. This will make it easier for doing a dsave from this disk image into a normal distro disk image so people have these drivers ready for when new memory upgrades allow compatible usage of the NoCan registers.
author David Ladd <drencor-xeen@users.sourceforge.net>
date Wed, 20 Dec 2017 15:15:49 -0600
parents 00b1c751fad7
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
396
00b1c751fad7 Added WInfo
boisy
parents:
diff changeset
1 WInfo - v2.0 by Alan DeKok
00b1c751fad7 Added WInfo
boisy
parents:
diff changeset
2 Minor modifications to make WInfo use the I$Attach system call
00b1c751fad7 Added WInfo
boisy
parents:
diff changeset
3 to find the device table entry of the window in question.
00b1c751fad7 Added WInfo
boisy
parents:
diff changeset
4 The old WInfo rooted through system memory by hand, and used
00b1c751fad7 Added WInfo
boisy
parents:
diff changeset
5 a FIXED device table size which broke under NitrOS-9 v1.22
00b1c751fad7 Added WInfo
boisy
parents:
diff changeset
6
00b1c751fad7 Added WInfo
boisy
parents:
diff changeset
7 This corrected version will work properly under ANY version
00b1c751fad7 Added WInfo
boisy
parents:
diff changeset
8 of OS-9 or NitrOS-9, past, present, or future.
00b1c751fad7 Added WInfo
boisy
parents:
diff changeset
9
00b1c751fad7 Added WInfo
boisy
parents:
diff changeset
10 NitrOS-9 Level III patches by request of Erik Tromp, thanks!
00b1c751fad7 Added WInfo
boisy
parents:
diff changeset
11
00b1c751fad7 Added WInfo
boisy
parents:
diff changeset
12 WInfo - v1.0 copyright December,1987 by Ron Lammardo
00b1c751fad7 Added WInfo
boisy
parents:
diff changeset
13 Placed in the Public Domain December,1987
00b1c751fad7 Added WInfo
boisy
parents:
diff changeset
14 This subroutine may not be sold or used in any commercial package
00b1c751fad7 Added WInfo
boisy
parents:
diff changeset
15 without the permission of the author.
00b1c751fad7 Added WInfo
boisy
parents:
diff changeset
16
00b1c751fad7 Added WInfo
boisy
parents:
diff changeset
17 WInfo is an OS9 Level II subroutine to return window information on any
00b1c751fad7 Added WInfo
boisy
parents:
diff changeset
18 window in use. Although WInfo is written in ASM, it is set up to be callable
00b1c751fad7 Added WInfo
boisy
parents:
diff changeset
19 from an ASM, Basic09, and (hopefully) C main programs. This subroutine directly
00b1c751fad7 Added WInfo
boisy
parents:
diff changeset
20 accesses system window tables, screen tables, and device memory. As such, if a
00b1c751fad7 Added WInfo
boisy
parents:
diff changeset
21 new level/version of OS9 were to be released, the subroutine module would
00b1c751fad7 Added WInfo
boisy
parents:
diff changeset
22 possibly need to be re-written. However, by putting all the 'cheating' code
00b1c751fad7 Added WInfo
boisy
parents:
diff changeset
23 into this subroutine, any applications program calling it would not need
00b1c751fad7 Added WInfo
boisy
parents:
diff changeset
24 modification or re-assembling. To further ensure upward compatability between
00b1c751fad7 Added WInfo
boisy
parents:
diff changeset
25 editions of WInfo, a sizable amount of space is allocated in the return buffer
00b1c751fad7 Added WInfo
boisy
parents:
diff changeset
26 to allow additional fields to be added without impacting the position of
00b1c751fad7 Added WInfo
boisy
parents:
diff changeset
27 existing fields.
00b1c751fad7 Added WInfo
boisy
parents:
diff changeset
28
00b1c751fad7 Added WInfo
boisy
parents:
diff changeset
29 WInfo requires two parameters : a string containing the requested device
00b1c751fad7 Added WInfo
boisy
parents:
diff changeset
30 name, and a return buffer (described below) to place the information into. To
00b1c751fad7 Added WInfo
boisy
parents:
diff changeset
31 maintain compatability with basic09, the sizes of these two parameters along
00b1c751fad7 Added WInfo
boisy
parents:
diff changeset
32 with the parameter count (always 2) must be passed if the calling program is
00b1c751fad7 Added WInfo
boisy
parents:
diff changeset
33 ASM. WInfo also requires 512 bytes for its own use...ASM calling programs
00b1c751fad7 Added WInfo
boisy
parents:
diff changeset
34 should allow at least that much buffer space just below the stack address at
00b1c751fad7 Added WInfo
boisy
parents:
diff changeset
35 the time of call.
00b1c751fad7 Added WInfo
boisy
parents:
diff changeset
36
00b1c751fad7 Added WInfo
boisy
parents:
diff changeset
37 If WInfo encounters a system-type error, it will return with the carry bit
00b1c751fad7 Added WInfo
boisy
parents:
diff changeset
38 set and the b register containing the appropriate error code. If a WInfo error
00b1c751fad7 Added WInfo
boisy
parents:
diff changeset
39 condition is encountered, the first byte of the return buffer (WI$Stat) will
00b1c751fad7 Added WInfo
boisy
parents:
diff changeset
40 contain the error number and the error message will be returned at the end of
00b1c751fad7 Added WInfo
boisy
parents:
diff changeset
41 the buffer (WI$ErMsg). If the length of the buffer passed to WInfo is too
00b1c751fad7 Added WInfo
boisy
parents:
diff changeset
42 small, the error status returned (WI$Stat) will be $FF with no error message,
00b1c751fad7 Added WInfo
boisy
parents:
diff changeset
43 as the error message is normally placed at the end of the return buffer.
00b1c751fad7 Added WInfo
boisy
parents:
diff changeset
44
00b1c751fad7 Added WInfo
boisy
parents:
diff changeset
45 WInfo also returns its edition # (the byte after the module name) as part of
00b1c751fad7 Added WInfo
boisy
parents:
diff changeset
46 the return packet (WI$Edtn). This edition # can be checked to determine if the
00b1c751fad7 Added WInfo
boisy
parents:
diff changeset
47 correct minimum level of WInfo is being accessed by the main program. For
00b1c751fad7 Added WInfo
boisy
parents:
diff changeset
48 example, if WInfo edition #4 is the first edition to return the # of users
00b1c751fad7 Added WInfo
boisy
parents:
diff changeset
49 accessing a window, the main program could check the edition # to insure it
00b1c751fad7 Added WInfo
boisy
parents:
diff changeset
50 was accessing WInfo edition #4 or higher, as any earlier edition would not
00b1c751fad7 Added WInfo
boisy
parents:
diff changeset
51 return the needed information.
00b1c751fad7 Added WInfo
boisy
parents:
diff changeset
52
00b1c751fad7 Added WInfo
boisy
parents:
diff changeset
53 Most of the return packet fields are self-explanitory, but a few might need
00b1c751fad7 Added WInfo
boisy
parents:
diff changeset
54 further clarification.
00b1c751fad7 Added WInfo
boisy
parents:
diff changeset
55
00b1c751fad7 Added WInfo
boisy
parents:
diff changeset
56 WI$BPR - bytes per row. This is the number of bytes making up a line of
00b1c751fad7 Added WInfo
boisy
parents:
diff changeset
57 charactrers, not the number of bytes in 1 dot row. To get the number
00b1c751fad7 Added WInfo
boisy
parents:
diff changeset
58 of bytes per dot row,divide by 8.
00b1c751fad7 Added WInfo
boisy
parents:
diff changeset
59
00b1c751fad7 Added WInfo
boisy
parents:
diff changeset
60 WI$Lset- Logic set # - see OS9 Level II manual page 3-21 in the winows section.
00b1c751fad7 Added WInfo
boisy
parents:
diff changeset
61
00b1c751fad7 Added WInfo
boisy
parents:
diff changeset
62 WI$VDG - VDG type screen indicator. The following values are possible:
00b1c751fad7 Added WInfo
boisy
parents:
diff changeset
63 0 = Non-vdg type screen
00b1c751fad7 Added WInfo
boisy
parents:
diff changeset
64 1 = VDG text type screen
00b1c751fad7 Added WInfo
boisy
parents:
diff changeset
65 2 = VDG medium-res (coco2) graphics screen - WI$Sty contains the screen
00b1c751fad7 Added WInfo
boisy
parents:
diff changeset
66 mode in the first 4 bits and the foreground color in the last 4 bits.
00b1c751fad7 Added WInfo
boisy
parents:
diff changeset
67 The modes and colors are fully described in the OS9 Level-II manual
00b1c751fad7 Added WInfo
boisy
parents:
diff changeset
68 pages B-5 & B-6 of the command reference.
00b1c751fad7 Added WInfo
boisy
parents:
diff changeset
69 3 = VDG hi-res (coco3) graphics screen - WI$Sty contains the screen type as
00b1c751fad7 Added WInfo
boisy
parents:
diff changeset
70 defined in the SS.AScrn Set Status call. This is the only VDG code
00b1c751fad7 Added WInfo
boisy
parents:
diff changeset
71 which will return valid palette information (WI$PRegs).
00b1c751fad7 Added WInfo
boisy
parents:
diff changeset
72
00b1c751fad7 Added WInfo
boisy
parents:
diff changeset
73 The following fields are never valid for VDG type screens:
00b1c751fad7 Added WInfo
boisy
parents:
diff changeset
74
00b1c751fad7 Added WInfo
boisy
parents:
diff changeset
75 WI$CBsw - character binary switch bits
00b1c751fad7 Added WInfo
boisy
parents:
diff changeset
76 WI$BDPRN - Border palette register number
00b1c751fad7 Added WInfo
boisy
parents:
diff changeset
77 WI$FGPRN - Foreground palette register number
00b1c751fad7 Added WInfo
boisy
parents:
diff changeset
78 WI$BGPRN - Background palette register number
00b1c751fad7 Added WInfo
boisy
parents:
diff changeset
79 WI$Lset - Logic set number
00b1c751fad7 Added WInfo
boisy
parents:
diff changeset
80 WI$FntGr - Active font group number
00b1c751fad7 Added WInfo
boisy
parents:
diff changeset
81 WI$FntBf - Active font buffer number
00b1c751fad7 Added WInfo
boisy
parents:
diff changeset
82 WI$PstGr - Pattern set group number
00b1c751fad7 Added WInfo
boisy
parents:
diff changeset
83 WI$PstBf - Pattern set buffer number
00b1c751fad7 Added WInfo
boisy
parents:
diff changeset
84 WI$GcrGr - Gfx cursor group number
00b1c751fad7 Added WInfo
boisy
parents:
diff changeset
85 WI$GcrBf - Gfx cursor buffer number
00b1c751fad7 Added WInfo
boisy
parents:
diff changeset
86 WI$DrCrx - Draw cursor x position
00b1c751fad7 Added WInfo
boisy
parents:
diff changeset
87 WI$DrCry - Draw cursor y position
00b1c751fad7 Added WInfo
boisy
parents:
diff changeset
88
00b1c751fad7 Added WInfo
boisy
parents:
diff changeset
89
00b1c751fad7 Added WInfo
boisy
parents:
diff changeset
90 -------------------------------------------------------------------------------
00b1c751fad7 Added WInfo
boisy
parents:
diff changeset
91
00b1c751fad7 Added WInfo
boisy
parents:
diff changeset
92 This subroutine is available for use by any and all for whatever application.
00b1c751fad7 Added WInfo
boisy
parents:
diff changeset
93 Comments and suggestions for improvements/enhancements are greatly appreciated.
00b1c751fad7 Added WInfo
boisy
parents:
diff changeset
94 However,due to the nature of the subroutine I would appreciate retaining
00b1c751fad7 Added WInfo
boisy
parents:
diff changeset
95 control of any update issuances so that the edition numbers etc. stay
00b1c751fad7 Added WInfo
boisy
parents:
diff changeset
96 controlled.
00b1c751fad7 Added WInfo
boisy
parents:
diff changeset
97
00b1c751fad7 Added WInfo
boisy
parents:
diff changeset
98 Ron Lammardo
00b1c751fad7 Added WInfo
boisy
parents:
diff changeset
99 75706,336
00b1c751fad7 Added WInfo
boisy
parents:
diff changeset
100
00b1c751fad7 Added WInfo
boisy
parents:
diff changeset
101