home *** CD-ROM | disk | FTP | other *** search
/ Liren Large Software Subsidy 5 / 05.iso / a / a057 / 6.img / YQMIS30B.EXE / OTYBB.MBK < prev    next >
Encoding:
Text File  |  1994-05-09  |  9.2 KB  |  491 lines

  1. *******************************************************
  2. * ╬─╝■├√│╞: OTYBB.PRG
  3. * │╠╨≥╔Φ╝╞:                       
  4. * ▒α│╠╚╒╞┌: 94.05.05   11:29:53
  5. *******************************************************
  6. set proc to otybb
  7. set safe off
  8. set date ansi
  9. set color to w/1,,
  10. *clear
  11. do smggp with '╟δ  ╔╘  ║≥ !',10,34
  12. set color to w/1,,
  13. priv r,n,ym,zym,jl,zy_bl,╚╒╞┌,╥│┬δ,╩▒╝Σ,─Ω,╘┬,╚╒,╨╟╞┌,╫▄╥│╩²,╝╟┬╝║┼,dyfs,ym0
  14. set print to txt.con
  15. priv zbkd,zbt,fbt,zbtbl,fbtbl,zbtkzm,fbtzm,sxkzm,bbkd
  16. priv c,d,n,l,m,u,b1,b2,b3,b4,b5,b6,b7,b8,myhs,ojs
  17. b1='⌐░'
  18. b2='⌐ª'
  19. b3='⌐ª'
  20. b4='⌐ª'
  21. b5='⌐└'
  22. b6='⌐ª'
  23. b7='⌐╕'
  24. b8='⌐└'
  25. c='╫╓╖√╨═'
  26. d='╚╒╞┌╨═'
  27. n='╩²╓╡╨═'
  28. l='┬▀╝¡╨═'
  29. m='▒╕╫ó╨═'
  30. u='╘╦╦π╖√'
  31. zbkd=0
  32. if file('YQTYBB.obt')
  33. rest from YQTYBB.obt addi
  34. else
  35. zbt='┐∞╦┘╫╘╤í─┌╚▌▒¿▒φ┤≥╙í│╠╨≥'
  36. fbt=''
  37. xbt=8
  38. endif
  39. zbtkzm=CHR(27)+'IC'
  40. fbtkzm=CHR(27)+'IC'
  41. btkzm=CHR(27)+'IA'
  42. yskh=0
  43. ywkh=0
  44. sxkzm=CHR(28)+'v1'
  45. zbtbl=1
  46. fbtbl=1
  47. myhs=xbt
  48. set fixe off
  49. bbkd=2
  50. ojs=0
  51. sele 10
  52. do while .not.eof()
  53. ojs=iif(╬╗<ojs,ojs,╬╗)
  54. bbkd=iif(╬╗>0,bbkd+╫╓╢╬│ñ╢╚+2,bbkd)
  55. skip
  56. enddo
  57. do qsdy
  58. sort on ╬╗ to qsbb.ls for ╬╗>0
  59. use qsbb.ls alia j
  60. if recc()=0
  61. use
  62. close proc
  63. return
  64. endif
  65. do scqs
  66. do dytybb
  67. close proc
  68. return
  69.  
  70. ****************
  71. * ╔Φ╝╞═¿╙├▒¿▒φ *
  72. ****************
  73. proc qsdy
  74. priv x,y,ok,ojl,ojlh,k
  75. set safe off
  76. x=19
  77. y=3
  78. goto top
  79. set color to 7/1,,
  80. clear
  81. @ 24,0 say ''
  82. call hj with '00007924'
  83. @ 1,26 say '═¿ ╙├ ▒¿ ▒φ ╫╘ ╢» ╔· │╔ ╞≈'
  84. @ 2,1 say repl('⌐Ñ',39)
  85. @ 17,1 say repl('⌐ñ',39)
  86. @ 22,1 say repl('⌐Ñ',39)
  87. do owind with y,x,y+13,x+41,'0/3,,'
  88. set color to ,w+/r,
  89. @ y+1,x+2 say '╣ñ╫≈╟°  ╫╓╢╬├√│╞   └α  ╨═   │ñ╢╚ ╨í╩²'
  90. @ y+2,x+1 say repl('⌐ñ',20)
  91. ojl=recn()
  92. do xszdcd
  93. set color to 7/1,,
  94. @ 23,1 say space(78)
  95. @ 23,1 say ' ╟δ╙├╗╪│╡╝ⁿ╤í╘±╥¬┤≥╙í╡─╫╓╢╬ú¼╤í╘±═Ω▒╧╟δ░┤Esc╝ⁿ═╦│÷ú¼▒¿▒φ╜½╫╘╢»╔·│╔íú'
  96. @ 18,30 say '▒φ╕±┐φ╢╚:'
  97. if bbkd>2
  98. @ 18,40 say bbkd pict '@bz'
  99. endif
  100. oi=1
  101. do while .t.
  102. ok=inkey(0)
  103. set color to 0/3,,
  104. do xszdgd
  105. do case
  106. case ok=24.and.recn()<recc()
  107. if oi<10
  108. oi=oi+1
  109. skip
  110. else
  111. if ojl<recc()-9
  112. goto ojl
  113. skip 10
  114. oi=1
  115. ojl=recn()
  116. do xszdcd
  117. loop
  118. endif
  119. endif
  120. case ok=5
  121. if oi>1
  122. oi=oi-1
  123. skip -1
  124. else
  125. if ojl>1
  126. goto ojl
  127. skip -10
  128. if bof()
  129. goto top
  130. endif
  131. oi=1
  132. ojl=recn()
  133. do xszdcd
  134. loop
  135. endif
  136. endif
  137. case ok=3.and.ojl<recc()-9
  138. goto ojl
  139. skip 10
  140. oi=1
  141. ojl=recn()
  142. do xszdcd
  143. loop
  144. case ok=18.and.ojl>1
  145. goto ojl
  146. skip -10
  147. if bof()
  148. goto top
  149. endif
  150. oi=1
  151. ojl=recn()
  152. do xszdcd
  153. loop
  154. case ok=13.and.╫╓╢╬└α╨═<>'U'
  155. if ╬╗=0
  156. if bbkd+╫╓╢╬│ñ╢╚+2<=228
  157. bbkd=bbkd+╫╓╢╬│ñ╢╚+2
  158. ojs=ojs+1
  159. repl ╬╗ with ojs
  160. @ oi+5,x+2 say ╬╗
  161. endif
  162. else
  163. oxz=╬╗
  164. bbkd=bbkd-╫╓╢╬│ñ╢╚-2
  165. ojs=ojs-1
  166. repl ╬╗ with 0
  167. ojlh=recn()
  168. repl ╬╗ with ╬╗-1 for ╬╗>oxz
  169. oi0=oi
  170. oi=y+3
  171. goto ojl
  172. do while oi<y+13
  173. @ oi,x+2 say ╬╗ pict '@z'
  174. oi=oi+1
  175. if .not.eof()
  176. skip
  177. endif
  178. enddo
  179. oi=oi0
  180. goto ojlh
  181. endif
  182. set color to 7+/1,,
  183. @ 18,40 say bbkd pict '@bz'
  184. case ok=27
  185. do xgbt
  186. do smggp with '╟δ╔╘║≥!',10,34
  187. exit
  188. endcase
  189. set color to w+/r,,
  190. do xszdgd
  191. @ 24,0 say ''
  192. enddo
  193. return
  194. *******************************
  195. * ╧╘╩╛╫╓╢╬▓╦╡Ñ                *
  196. *******************************
  197. proc xszdcd
  198. priv oi0,ol,x,y
  199. x=19
  200. y=3
  201. if recc()<1
  202. return
  203. endif
  204. set color to 0/3,,
  205. oi0=y+3
  206. @ oi0,x+1 clear to oi0+9,x+39
  207. ol=recn()
  208. do while oi0<y+13.and..not.eof()
  209. @ oi0,x+2 say ╬╗ pict '@z'
  210. @ oi0,x+5 say ╟°+'->'
  211. @ oi0,x+10 say ╫╓╢╬├√
  212. ozdlx=╫╓╢╬└α╨═
  213. @ oi0,x+21 say &ozdlx
  214. @ oi0,x+30 say ╫╓╢╬│ñ╢╚ pict '@z'
  215. @ oi0,x+35 say ╫╓╢╬╨í╩² pict '@z'
  216. oi0=oi0+1
  217. if .not.eof()
  218. skip
  219. endif
  220. enddo
  221. goto ol
  222. oi=1
  223. set color to w+/r,,
  224. do xszdgd
  225. return
  226. *********************
  227. * ╧╘╩╛╫╓╢╬╣Γ┤°      *
  228. *********************
  229. proc xszdgd
  230. priv x
  231. x=19
  232. @ oi+5,x+4 say space(36)
  233. @ oi+5,x+5 say ╟°+'->'
  234. @ oi+5,x+10 say ╫╓╢╬├√
  235. ozdlx=╫╓╢╬└α╨═
  236. @ oi+5,x+21 say &ozdlx
  237. @ oi+5,x+30 say ╫╓╢╬│ñ╢╚ pict '@z'
  238. @ oi+5,x+35 say ╫╓╢╬╨í╩² pict '@z'
  239. return
  240. **************************
  241. * ╬─╝■├√│╞: SCQS.PRG
  242. * ╓≈╥¬╣ª─▄: ╔·│╔═¿╙├▒¿▒φ *
  243. **************************
  244. proc scqs
  245. priv bb,ocd,osmcd,osm
  246. goto top
  247. do while .not.eof()
  248. osm=trim(╫╓╢╬╦╡├≈)
  249. osmcd=len(osm)
  250. ocd=int(╫╓╢╬│ñ╢╚/2)+mod(╫╓╢╬│ñ╢╚,2)
  251. b1=b1+repl('⌐ñ',ocd)+'⌐╨'
  252. do case 
  253. case ocd*2>=osmcd
  254. b2=b2+space(ocd*2)+'⌐ª'
  255. oqkg=int((ocd*2-osmcd)/2)
  256. ohkg=ocd*2-osmcd-oqkg
  257. b3=b3+space(oqkg)+osm+space(ohkg)+'⌐ª'
  258. b4=b4+space(ocd*2)+'⌐ª'
  259. case ocd*4>=osmcd
  260. b2=b2+left(osm,ocd*2)+'⌐ª'
  261. b3=b3+space(ocd*2)+'⌐ª'
  262. osm=subs(osm,ocd*2+1,ocd*2)
  263. osmcd=len(osm)
  264. oqkg=int((ocd*2-osmcd)/2)
  265. ohkg=ocd*2-osmcd-oqkg
  266. b4=b4+space(oqkg)+osm+space(ohkg)+'⌐ª'
  267. othe
  268. b2=b2+left(osm,ocd*2)+'⌐ª'
  269. b3=b3+subs(osm,ocd*2+1,ocd*2)+'⌐ª'
  270. osm=subs(osm,ocd*4+1,ocd*2)
  271. osmcd=len(osm)
  272. oqkg=int((ocd*2-osmcd)/2)
  273. ohkg=ocd*2-osmcd-oqkg
  274. b4=b4+space(oqkg)+osm+space(ohkg)+'⌐ª'
  275. endcase
  276. b5=b5+repl('⌐ñ',ocd)+'⌐α'
  277. b6=b6+'&'+space(ocd*2-1)+'⌐ª'
  278. b7=b7+repl('⌐ñ',ocd)+'⌐╪'
  279. b8=b8+repl('⌐ñ',ocd)+'⌐╪'
  280. skip
  281. enddo
  282. b1=left(b1,len(b1)-2)+'⌐┤'
  283. b5=left(b5,len(b5)-2)+'⌐╚'
  284. b7=left(b7,len(b7)-2)+'⌐╝'
  285. b8=left(b8,len(b8)-2)+'⌐╚'
  286. return
  287. ***********************************
  288. * ╬─╝■├√│╞:XGBT.PRG
  289. * ╓≈╥¬╣ª─▄:╨▐╕─╚╬╥Γ▒¿▒φ╡─▒Ω╠Γ
  290. ***********************************
  291. proc xgbt
  292. set  color to 7/1,,
  293. @ 18,1 clear to 21,78
  294. @ 19,20 say '╟δ╩Σ╚δ├┐╥│┤≥╙í╡─╝╟┬╝╩²:' get xbt pict '999' rang 1,999
  295. read
  296. myhs=xbt
  297. set color to 0/7,0/7,
  298. @ 18,2 clear to 21,77
  299. call hbk with '18022177Z'
  300. zbt=zbt+space(64-len(zbt))
  301. fbt=fbt+space(64-len(fbt))
  302. @ 19,4 say '╓≈▒Ω╠Γ:' get zbt
  303. @ 20,4 say '╕▒▒Ω╠Γ:' get fbt
  304. set color to w/1,,
  305. @ 23,1 say space(78)
  306. @ 23,32 say '╟δ╩Σ╚δ▒φ╕±▒Ω╠Γ'
  307. set color to 0/7,0/7,
  308. read
  309. zbt=trim(zbt)
  310. fbt=trim(fbt)
  311. save to YQTYBB.obt all like ?bt
  312. set color to 7/1,0/7,
  313. @ 18,2 clear to 21,77
  314. set color to 7/1,w+/4,
  315. return
  316.  
  317. ***********************************
  318. * ╬─╝■├√│╞: DYTYBB.PRG
  319. * ╓≈╥¬╣ª─▄: ┤≥╙í═¿╙├▒¿▒φ
  320. ***********************************
  321. proc dytybb
  322. set safe off
  323. set date ansi
  324. set color to w/1,,
  325. @ 3,1 clear to 21,78
  326. do smggp with '╟δ  ╔╘  ║≥ !',10,34
  327. set color to w/1,,
  328. sele A
  329. priv ╚╒╞┌,╥│┬δ,╩▒╝Σ,─Ω,╘┬,╚╒,╨╟╞┌,╫▄╥│╩²,╝╟┬╝║┼
  330. priv r,n,ym,zym,jl,zy_bl,zbtwz,fbtwz,bk,ojls,blkd
  331. bk=len(b1)
  332. set date ansi
  333. sele A
  334. set dele on
  335. zbtwz=zbkd*zbtbl+int((bk*zbtbl-len(zbt))/2)
  336. fbtwz=zbkd*fbtbl+int((bk*fbtbl-len(fbt))/2)
  337. zbtwz=iif(zbtwz<0,0,zbtwz)
  338. fbtwz=iif(fbtwz<0,0,fbtwz)
  339. ╚╒╞┌=date()
  340. ─Ω=str(year(date()),4)
  341. ╘┬=str(mont(date()),2)
  342. ╚╒=str(day(date()),2)
  343. ╨╟╞┌=left(cdow(date()),6)
  344. ym=0
  345. r=chr(10)
  346. n=0
  347. set devi to scre
  348. count to ojls
  349. zym=int(ojls/myhs)+iif(mod(ojls,myhs)>0,1,0)
  350. ╫▄╥│╩²=ltrim(str(zym,8))
  351. do smggp with '▒¿▒φ╣▓'+ltrim(str(zym,6))+'╥│,┤╙╡┌╝╕╥│┐¬╩╝┤≥╙í?         _',10,20
  352. *set color to ,w+/r,
  353. @ 10,52 get ym rang 0,zym pict '@b 999999'
  354. read
  355. if ym=0
  356. return
  357. endif
  358. goto top
  359. skip (ym-1)*6
  360. do while .not.eof()
  361. set devi to scre
  362. set color to w/1,,
  363. @ 3,1 clear to 21,78
  364. do smggp with '╒²╘┌┤≥╙í╡┌'+ltrim(str(ym,6))+'╥│,Esc═╦│÷',10,26
  365. set color to w/1,,
  366. ╥│┬δ=ltrim(str(ym,6))
  367. ╩▒╝Σ=time()
  368. @ 24,0 say ''
  369. set devi to print
  370. @ prow(),pcol() say repl(r,yskh)
  371. @ prow(),pcol() say sxkzm
  372. @ prow(),pcol() say zbtkzm+chr(13)
  373. @ prow(),zbtwz say zbt+r
  374. @ prow(),pcol() say fbtkzm+chr(13)
  375. @ prow(),fbtwz say fbt
  376. @ prow(),pcol() say btkzm+chr(13)+r
  377. ╝╟┬╝║┼=ltrim(str(recn(),8))
  378. @ prow(),zbkd+2 say '╡┌'
  379. @ prow(),pcol()+1 say ym pict '9999'
  380. @ prow(),pcol()+1 say '╥│'+r
  381. @ prow(),zbkd say b1+r
  382. @ prow(),zbkd say b2+r
  383. @ prow(),zbkd say b3+r
  384. @ prow(),zbkd say b4+r
  385. n=0
  386. do while n<myhs
  387. ok=inkey()
  388. if ok=27
  389. set devi to scre
  390. return
  391. endif
  392. ╝╟┬╝║┼=ltrim(str(recn(),8))
  393. @ prow(),zbkd say b5+r
  394. @ prow(),zbkd say '⌐ª'
  395. sele 10
  396. goto top
  397. do while .not.eof()
  398. if ╟°$'AX'
  399. ozdm=trim(╫╓╢╬├√)
  400. else
  401. ozdm=╟°+'->'+trim(╫╓╢╬├√)
  402. endif
  403. sele 1
  404. @ prow(),pcol() say &ozdm pict '@z'
  405. @ prow(),pcol() say '⌐ª'
  406. sele 10
  407. skip
  408. enddo
  409. @ prow(),pcol() say r
  410. sele 1
  411. if .not.eof()
  412. skip
  413. endif
  414. n=n+1
  415. enddo
  416. if ym<zym
  417. @ prow(),zbkd say b7+r
  418. else
  419. sele 10
  420. loca for ╫╓╢╬└α╨═='N'.and.╟°='A'
  421. if found()
  422. @ prow(),zbkd say b8+r
  423. bk0=2
  424. goto top
  425. do while .not.eof()
  426. if ╫╓╢╬└α╨═='N'.and.╟°='A'
  427. ozdm=trim(╫╓╢╬├√)
  428. ozdsm=trim(╫╓╢╬╦╡├≈)+'║╧╝╞: '
  429. sele 1
  430. sum &ozdm to zy_bl
  431. blkd=log(abs(iif(zy_bl=0,1,zy_bl)))+6
  432. blkd=int(iif(blkd<6,6,blkd))
  433. blkd=iif(blkd>18,18,blkd)
  434. blpict='@zb '+repl('9',blkd-5)+'.99'
  435. if bk0+len(ozdsm)+blkd+1<bk.or.bk0=2
  436. if bk0=2
  437. @ prow(),zbkd say '⌐ª'
  438. endif
  439. @ prow(),zbkd+bk0+1 say ozdsm
  440. @ prow(),pcol() say zy_bl pict '&blpict'
  441. bk0=bk0+len(ozdsm)+blkd
  442. else
  443. @ prow(),zbkd+bk-2 say '⌐ª'+r
  444. @ prow(),zbkd say '⌐└'+repl('⌐ñ',bk/2-2)+'⌐╚'+r
  445. @ prow(),zbkd say '⌐ª'
  446. @ prow(),pcol() say ozdsm
  447. @ prow(),pcol() say zy_bl pict '&blpict'
  448. bk0=len(ozdsm)+blkd+2
  449. endif
  450. endif
  451. sele 10
  452. skip
  453. enddo
  454. @ prow(),zbkd+bk-2 say '⌐ª'+r
  455. @ prow(),zbkd say '⌐╕'+repl('⌐ñ',bk/2-2)+'⌐╝'+r
  456. else
  457. @ prow(),zbkd say b7+r
  458. endif
  459. endif
  460. @ prow(),zbkd+2 say date()
  461. @ prow(),pcol()+2 say time()
  462. if ym<zym
  463. @ prow(),pcol() say r
  464. else
  465. @ prow(),pcol()+4 say '╝╟┬╝╩²: '
  466. @ prow(),pcol() say ojls pict '@b 99999999'
  467. @ prow(),pcol() say r
  468. endif
  469. @ prow(),pcol() say repl(r,ywkh)
  470. set devi to scre
  471. set print to prn
  472. do oxsbb
  473. sele 10
  474. use qsbb.ls alia j
  475. set print to txt.con
  476. set color to 7/1,,
  477. @ 3,1 clear to 21,78
  478. do smggp with '╡┌'+ltrim(str(ym,6))+'╥│┤≥╙í═Ω▒╧░┤╚╬╥Γ╝ⁿ╝╠╨°,Esc╝ⁿ═╦│÷',10,20
  479. @ 24,0 say ''
  480. ym=ym+1
  481. ok=inkey(0)
  482. if ok=27
  483. exit
  484. endif
  485. enddo
  486. set devi to scre
  487. set dele off
  488. return
  489. *******************************************************
  490. * ▒α│╠╚╒╞┌: 94.05.05   11:29:57
  491. *******************************************************