|
|
1.1 root 1: .key NOGUI/S,GUI/S,DEFSCR/S,PUBSCR/S,REQSCR/S,SM/K,DEPTH/K,LORES/S,HIRES/S,NODITHER/S,GRAY/S,FRAMERATE/K,FASTBLIT/S,CHIP/K,SLOWFAST/K,Z2RAM/K,Z3RAM/K,NOSOUND/S,DF0/K,DF1/K,DF2/K,DF3/K,ROMFILE/K,MOUNT/K
2: .bra {
3: .ket }
4:
5: ; $VER: UAEWB 0.2 (26.01.97) � by Samuel Devulder
6:
7: ; ==============================================
8: ; NOGUI forces the interpretation of CMDLINE arg
9: ; ==============================================
10: IF NOT {NOGUI}
11: Skip DO_GUI
12: ENDIF
13:
14: ; ===============
15: ; Analyse CMDLINE
16: ; ===============
17:
18: FAILAT 20
19:
20: ; ============================================
21: ; Ensure IXEMUL will use the ENV:UAESM we want
22: ; ============================================
23: Delete >NIL: ENV:UAESM
24: Avail >NIL: flush
25:
26: ; ==================
27: ; SCREEN TYPE OPTION
28: ; ==================
29: Set HOPT " -H1"
30: If {DEFSCR}
31: Set HOPT " -H0"
32: Endif
33: If {PUBSCR}
34: Set HOPT " -H1"
35: Endif
36: If {REQSCR}
37: Set HOPT " -H2"
38: Endif
39: Set tmp1 `eval {DEPTH}+0`
40: Set tmp2 `eval {SM}+0`
41: If $tmp1 GT 0
42: If $tmp2 GT 0
43: SetEnv UAESM $tmp2:$tmp1
44: Set HOPT " -H2"
45: ELSE
46: Echo "Error: Missing SM=<num> argument"
47: Quit 10
48: Endif
49: ELSE
50: If $tmp2 GT 0
51: Echo "Error: Missing DEPTH=<num> argument"
52: Quit 10
53: Endif
54: Endif
55:
56: ; ===========
57: ; WINDOW SIZE
58: ; ===========
59: Set OOPT " -O640:512:XYd"
60: If {LORES}
61: Set OOPT " -O320:256:XYl"
62: Endif
63: If {HIRES}
64: Set OOPT " -O640:512:XYd"
65: Endif
66:
67: ; ========
68: ; RAM SIZE
69: ; ========
70: Set RAMOPT ""
71: If {CHIP}
72: Set tmp1 `eval {CHIP}/256`
73: If $tmp1 GT 0
74: Set RAMOPT "$RAMOPT -c$tmp1"
75: ELSE
76: Echo "Error: CHIP=256 or 512 or 1024 or 2048"
77: Quit 10
78: Endif
79: Endif
80: If {Z2RAM}
81: Set tmp1 `eval {Z2RAM}/1024`
82: If $tmp1 GT 0
83: Set RAMOPT "$RAMOPT -F$tmp1"
84: ELSE
85: Echo "Error: Z2RAM=1024 or 2048 or ... or 8192"
86: Quit 10
87: Endif
88: Endif
89: If {Z3RAM}
90: Set tmp1 `eval {Z3RAM}/1024`
91: If $tmp1 GT 0
92: Set RAMOPT "$RAMOPT -Z$tmp1"
93: ELSE
94: Echo "Error: Z3RAM=1024 or 2048 or ..."
95: Quit 10
96: Endif
97: Endif
98: If {SLOWFAST}
99: Set tmp1 `eval {SLOWFAST}/256`
100: If $tmp1 GT 0
101: Set RAMOPT "$RAMOPT -s$tmp1"
102: ELSE
103: Echo "Error: SLOWFAST=512 or 1024"
104: Quit 10
105: Endif
106: Endif
107:
108: ; =====
109: ; DISKS
110: ; =====
111: Set DISKS ""
112: If {DF0}
113: Set DISKS "$DISKS -0{DF0}"
114: Endif
115: If {DF1}
116: Set DISKS "$DISKS -1{DF1}"
117: Endif
118: If {DF2}
119: Set DISKS "$DISKS -2{DF2}"
120: Endif
121: If {DF3}
122: Set DISKS "$DISKS -3{DF3}"
123: Endif
124: If {ROMFILE}
125: Set RISKS "$DISKS -r{ROMFILE}"
126: Endif
127:
128: ; =====
129: ; SOUND
130: ; =====
131: Set SOUND " -S2"
132: If {NOSOUND}
133: Set SOUND " -S0"
134: Endif
135:
136: ; ====
137: ; MISC
138: ; ====
139: Set MISC ""
140: If {NODITHER}
141: Set MISC "$MISC -x"
142: Endif
143: If {GRAY}
144: Set MISC "$MISC -T"
145: Endif
146: If {FASTBLIT}
147: Set MISC "$MISC -n3i"
148: Endif
149: Set tmp1 `eval {FRAMERATE}+0`
150: If $tmp1 GT 0
151: Set MISC "$MISC -f$tmp1"
152: Endif
153:
154: ; ===============
155: ; VOLUME MOUNTING
156: ; ===============
157: Set MOUNT ""
158: If {MOUNT}
159: Set MOUNT "-m{MOUNT}"
160: Endif
161:
162: ; ============
163: ; Launch GUI ?
164: ; ============
165: If {GUI}
166: Set tmp1 "UAEGUI.rexx"
167: If EXISTS $tmp1
168: Run >nil: rx $tmp1
169: ELSE
170: Set tmp1 "src/UAEGUI.rexx"
171: If EXISTS $tmp1
172: Run >nil: rx $tmp1
173: ELSE
174: Set tmp1 "amiga/UAEGUI.rexx"
175: If EXISTS $tmp1
176: Run >nil: rx $tmp1
177: ELSE
178: Echo "Warning: Can not find UAEGUI.rexx."
179: Endif
180: Endif
181: Endif
182: Endif
183:
184: Stack >NIL: 32000
185:
186: echo "Running *"uae$HOPT$OOPT$RAMOPT$SOUND$MISC$DISKS$MOUNT*""
187:
188: If EXISTS uae.aos
189: UAE.aos $HOPT$OOPT$RAMOPT$SOUND$MISC$DISKS$MOUNT
190: ELSE
191: UAE $HOPT$OOPT$RAMOPT$SOUND$MISC$DISKS$MOUNT
192: Endif
193:
194: Quit $RC
195:
196: ; ====================
197: ; Run the GUI Launcher
198: ; ====================
199: Lab DO_GUI
200: ; in some case on my setup, I have a deadlock if this is not loaded
201: Version >NIL: LIBS:compressors/xpkGZIP.library
202:
203: ; check for MUIREXX
204: Which >NIL: MuiRexx
205: If WARN
206: Set Title "UAEWB: Error!"
207: Set Body "Can't find MUIRexx! (UAE needs at least MUIRexx 3.0)"
208: If EXISTS c:RequestChoice
209: c:RequestChoice "$Title" "$Body" "Ok"
210: Else
211: Echo >"CON://320/50/$Title/WAIT/CLOSE" "$Body"
212: Endif
213: Quit 10
214: Endif
215:
216: ;check for ixemul
217: Version >NIL: ixemul.library 47
218: If WARN
219: Set Title "UAEWB: Error!"
220: Set Body "Can't find ixemul.library v47!"
221: If EXISTS c:RequestChoice
222: c:RequestChoice "$Title" "$Body" "Ok"
223: Else
224: Echo >"CON://320/50/$Title/WAIT/CLOSE" "$Body"
225: Endif
226: Quit 10
227: Endif
228:
229: ; 32Kb stack should be enough
230: Stack >NIL: 32000
231: rx >NIL: UAEWB.rexx
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.