; ; 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: