TBBS23M32A.exe.x/TBBS23M32A.IMA.x/RIPKIT/RIPMACRO.SDL

5.8 KB deb62629d5eec394…
;
; TBBS RIP Menu Macros
; Sample SDL Source Code
;
;
;
; -------------------------------------------------------------------------
; SAMPLE SDL FILES IN THE RIP KIT
;
;       RIPMAC.SDL (This File)
;
;               A series of SDL macros which can be used to implement a
;               RIP/ANSI/TTY menu system in TBBS with a minimum of effort
;               using a design developed by eSoft.  USE AS-IS WITHOUT
;               MODIFICATIONS.
;
;       RIPKIT.SDL (*NOT* This File)
;
;               An example of how to use the SDL macros provided in the
;               other SDL file (above) to create a TBBS menu system.
;               DO NOT USE AS-IS, since you'll need to make your own
;               menus.
;
;       RIPFLAG.SDL (*NOT* This File)
;
;               Created during installation of the RIP Kit, it designates
;               the flag(s) for a RIP user.
;
;
;
;
;
; ---------------------------------------------------------------------------
; IMPORTANT NOTE
;
; Please PRINT OUT and READ THROUGH this entire document before you
; attempt to use this SDL code.  Although easy to use, various aspects of
; this code are somewhat involved and can take some time to understand.
; DO NOT jump into this without first reviewing it fully and gaining an
; understanding of how it's applied.
;
;
;
;
; -------------------------------------------------------------------------
; GENERAL INFORMATION ABOUT THIS SAMPLE CODE
;
; As explained above, this file contains examples of how to apply and use
; SDL macros we've created in order to make a RIP/ANSI/TTY menu system
; with TBBS.
;
; PLEASE UNDERSTAND that this SDL code will implement *OUR* menu designs
; in RIP, ANSI and TTY formats.  If you do not like these designs, they
; are not easily modified.  You can use the RIPMAC.SDL file as a prototype
; for how you might approach developing your own RIP macros, but it is
; extremely difficult and time consuming develop such macros on your own.
; If you don't like these designs, we recommend you use a different
; approach to making RIP menus and abandon this sample SDL code entirely.
; Refer to the RIP Kit documentation for further instructions.
;
;
;
;
;
; These are all the RIP meganum substitution macros called within each
; 'Item#' macro to translate the hot-key to meganum format for RIP.
; NOTE:  HOT-KEYS USING THIS SAMPLE SDL CODE ARE LIMITED TO THESE
; HOT-KEY CHOICES -- OTHER KEYS CANNOT BE USED!
;
Equate: A = 1T
Equate: B = 1U
Equate: C = 1V
Equate: D = 1W
Equate: E = 1X
Equate: F = 1Y
Equate: G = 1Z
Equate: H = 20
Equate: I = 21
Equate: J = 22
Equate: K = 23
Equate: L = 24
Equate: M = 25
Equate: N = 26
Equate: O = 27
Equate: P = 28
Equate: Q = 29
Equate: R = 2A
Equate: S = 2B
Equate: T = 2C
Equate: U = 2D
Equate: V = 2E
Equate: W = 2F
Equate: X = 2G
Equate: Y = 2H
Equate: Z = 2I
Equate: 0 = 1C
Equate: 1 = 1D
Equate: 2 = 1E
Equate: 3 = 1F
Equate: 4 = 1G
Equate: 5 = 1H
Equate: 6 = 1I
Equate: 7 = 1J
Equate: 8 = 1K
Equate: 9 = 1L
Equate: ! = 0X
Equate: # = 0Z
Equate: $ = 1T
Equate: % = 10
Equate: ^^ = 2M
Equate: & = 11
Equate: * = 15
Equate: ~ = 3I
Equate: ` = 2O
Equate: _ = 2N
Equate: - = 19
Equate: { = 3F
Equate: } = 3H
Equate: [ = 2J
Equate: ] = 2L
Equate: | = 3G
Equate: \ = 2K
Equate: " = 0Y
Equate: ' = 12
Equate: ? = 1R
Equate: / = 1A
Equate: < = 1O
Equate: > = 1Q
Equate: . = 19
Equate: ! = 0X


; This macro draws the background button for the RIP menus,
; displays the given title for the menu on top of that button,
; and displays a text-only button above the menu for the name
; of your BBS (it is made a text-only button so that the text
; will always be centered for you).
Macro: TITLE
Entry: {%1}
Entry:
!|1K|w0000000000
!|1B00000200LC030F0009000100000F08000000
!|1U460WDR7W0000<><>
!|1B0000020080030F0001010100080F08000000
!|Y08000200
!|1U4B10DH1K0000<>%2<>
!|Y07000200
!|1B0000020080030F0000000000000F08000000
!|1U4600DM0O0000<>%3<>
!|Y00000100
^L
Endtext:
Endmacro:


; Draws the first menu option button
Macro: OPTION1
!|1B0000020QP2030F00090001000A0E08000000
!|Y08000100
!|1U4G1SDH2C%300<>%2<>%1
!|Y00000100
^L
Endmacro:

; Draws the second menu option button
Macro: OPTION2
!|1B0000020QP2030F00090001000A0E08000000
!|Y08000100
!|1U4G2ODH38%300<>%2<>%1
!|Y00000100
^L
Endmacro:

; Draws the third menu option button
Macro: OPTION3
!|1B0000020QP2030F00090001000A0E08000000
!|Y08000100
!|1U4G3KDH44%300<>%2<>%1
!|Y00000100
^L
Endmacro:

; Draws the fourth menu option button
Macro: OPTION4
!|1B0000020QP2030F00090001000A0E08000000
!|Y08000100
!|1U4G4GDH50%300<>%2<>%1
!|Y00000100
^L
Endmacro:

; Draws the fifth menu option button
Macro: OPTION5
!|1B0000020QP2030F00090001000A0E08000000
!|Y08000100
!|1U4G5CDH5W%300<>%2<>%1
!|Y00000100
^L
Endmacro:

; Draws the sixth menu option button
Macro: OPTION6
!|1B0000020QP2030F00090001000A0E08000000
!|Y08000100
!|1U4G68DH6S%300<>%2<>%1
!|Y00000100
^L
Endmacro:

; Draws the seventh menu option button
Macro: OPTION7
!|1B0000020QP2030F00090001000A0E08000000
!|Y08000100
!|1U4G74DH7O%300<>%2<>%1
!|Y00000100
^L
Endmacro:


; Draws the first global menu option button (appears
; at the bottom of the menu)
Macro: GLOBAL1
!|1B00000201EU030F0009000100020E08000000
!|Y08000100
!|1U4684788W%300<>%2<>%1
!|Y00000100
^L
Endmacro:

; Draws the second global menu option button (appears
; at the bottom of the menu)
Macro: GLOBAL2
!|1B00000201EU030F0009000100020E08000000
!|Y08000100
!|1U7I84AF8W%300<>%2<>%1
!|Y00000100
^L
Endmacro:

; Draws the third global menu option button (appears
; at the bottom of the menu)
Macro: GLOBAL3
!|1B00000201EU030F0009000100020E08000000
!|Y08000100
!|1UAP84DR8W%300<>%2<>%1
!|Y00000100
^L
Endmacro: