home *** CD-ROM | disk | FTP | other *** search
/ PC Open 22 / pcopen22.iso / Win31 / Muzidex / START.SBP < prev    next >
Encoding:
Text File  |  1992-02-28  |  15.6 KB  |  864 lines

  1. SBP
  2.   ╜ MuZidex - Copyright POD Associates Inc. January 5, 1992
  3.   ╜
  4.   ╜ Last Update: 02/25/1992
  5.   ╜
  6.   ╜     Database Design:
  7.   ╜
  8.   ╜            Jim Brandvold
  9.   ╜
  10.   ╜     Programmers:
  11.   ╜            
  12.   ╜            Jim Brandvold 
  13.  
  14. mloop: ╜ Main Loop & Menu item selection
  15.   │ _ wferror
  16.   ╜ 
  17.   ╜ Inputs : return_to%, err%
  18.   ╜ Outputs: NONE
  19.   ╜
  20.   ╜ This routine controls access to the rest of the program.
  21.   ╜ The first time through return_to% will be initialized by the system to 0
  22.   ╜ so sinit will be called to set up initial parameters.  Sinit then sets
  23.   ╜ return_to% to 1 (1=Local return) (>1=Chain return) for the next pass.
  24.   ╜ To allow files to be "CHAINed" to this one, before calling CHAIN set
  25.   ╜ the variable return_to% to a return value > 1, then modify the following 
  26.   ╜ "ON return_to% GOTO routinename ..." statement to reflect the new routine
  27.   ╜ label.  The routine that is returned to should set return_to = 1.  Chained
  28.   ╜ routines should trap their own errors but only set err% = ERRNO and chain back
  29.   ╜ to this routine.  Modify ferror to handle the errors expected.
  30.   ╜
  31.   í(err% 0) p wferror
  32.   ▀ e
  33.   í(return_to% 1) p
  34.  ╜ Returning from another routine
  35.  í( £ banner$)  (return_to% 1) p ┤ £banner$
  36.  íreturn_to% 1 p
  37.  vsmenu
  38.  ^
  39.  │return_to% wsmenu,VEB,AlbumEntryH,SongEntryH,AlbumQueryH,SongQueryH,WideAreaH
  40.  Æ í
  41.   ^
  42.  ╜ First Time Through
  43.  í σsys(7) 
  44. 400 pvga$ "n" ^vga$ "y"
  45.  ívga$ "y" pbanner$ "Music" ^banner$ "Music"
  46.  vsinit
  47.   Æ í
  48.  
  49.   ¼ │ma%,mb%
  50.   ╩ ╦"Select pulldown menu option"
  51.   ╩ ƒ"MuZidex"
  52.   ╪ Oma%
  53.  ╜ IF h2% <> MINS ( NOW ) THEN GOSUB shead
  54.   ┘
  55.   íma% 
  56. 5 p ¼ à
  57.   │ma% wm1,m2,m3,m4
  58.  
  59. sinit:  ╜ Initialize first time thru
  60.   ç
  61.   Γ e
  62.   ╩ ƒ"A POD Product"
  63.   ╩ ┬ ƒ"A POD Product"
  64.   ╩ ╦"A POD Product"
  65.   ¼ à
  66.   ┤ £"music1"
  67.   ╧ ¢15
  68.   ╧ ▀
  69.  song% 0
  70.  song_date% 1
  71.  return_to% 1
  72.  datsm% 1955
  73.  datlg% 1992
  74.  sonsm% 0
  75.  sonlg% 30
  76.  qury% 0
  77.  albumt% 0
  78.  albumq% 0
  79.  songt% 0
  80.  songq% 0
  81.  CD% 1
  82.  Recrd% 1
  83.  Cassette% 1
  84.  Video% 1
  85.  EightTrack% 1
  86.  ReelToReel% 1
  87.   Γ e
  88.  special$ "AC/DCHighway To Hell"
  89.   ï"dd/mm/yyyy"
  90.   ï"hh:mm:ss"
  91.   å t: ╩ f │: ╦ │: ▓"999990.00000"
  92.   ╩ ƒ"MuZidex"
  93.   ╩ ╦"Initializing Application..."
  94.   ╩ ┬ ƒ"MuZidex"
  95.   ¼ à
  96.   ┤ £banner$
  97.  
  98. smenu:  ╜ Define Pulldown Menus
  99.   ¼1,0,1,"&Data Entry"
  100.   ¼1,1,1,"&Enter Data"
  101.   ¼2,0,1,"&Query"
  102.   ¼2,1,1,"Search For A &Song"
  103.   ¼2,2,1,"Search For A &Group"
  104.   ¼2,3,1,"Search For An &Album"
  105.   ¼2,4,1,"&Wide Area Search"
  106.   ¼2,5,1,"&Print Database"
  107.   ¼3,0,1,"E&xit"
  108.   ¼3,1,1,"&Quit"
  109.   ¼4,0,1,"&Help"
  110.   ¼4,1,1,"&Index"
  111.   ¼4,2,1,"&General Information"
  112.   ¼4,3,1,"&Data Entry"
  113.   ¼4,4,1,"&Album Data Entry"
  114.   ¼4,5,1,"&Song Data Entry"
  115.   ¼4,6,1,"Data &Query"
  116.   ¼4,7,1,"&Group/Album Searches"
  117.   ¼4,8,1,"S&ong Searches"
  118.   ¼4,9,1,"&Wide Area Searches"
  119.   ¼4,10,1,"------------------------------------"
  120.   ¼4,11,1,"A&bout MuZidex"
  121.   ├
  122.  
  123. shead: 
  124.   ╩ ƒ"MuZidex"
  125.   ├
  126.  
  127. m1: ╜ ma%= 1 Database Menu Options 
  128.  selkey$ "":selkey% 0
  129.   wVEB
  130.  
  131. m2: ╜ ma%=2 Data Query
  132.   ╩ ƒ"MuZidex Query Tool"
  133.   ╩ ╦"Continue or Cancel"
  134.  qury% 1
  135.   ímb% 2 p
  136. mb% mb% 1
  137. AlbmQ% 1
  138.   ^
  139. AlbmQ% 0
  140.   Æ í
  141.   ╔ µmb%
  142.   µ1:
  143. SongQRet: 
  144.  ┤ Ö"songs"
  145. songt%  A("songs")
  146.  
  147.   ╜  SELECT WHERE ASK  *** Not User Friendly Replaced with following code
  148.  ┬"Enter the SONG name","OR a PORTION of the name",4,ret%,SongNameRet$
  149.  íret% 0 p wmloop
  150. SngQury$ "*" SongNameRet$ "*"
  151.  ╔ ╨song_name  SngQury$
  152.  
  153. songq% 0
  154.  ╔ `
  155.  ╪ O B("songs")
  156. songq% songq% 1
  157.  ╔ ▒
  158.  ┘
  159.  ísongq% 0 p
  160.  ┬"No Records selected!","Do you want to try again?",130,ans%
  161.  å Ö"songs"
  162.  íans% 1 p
  163.  wSongQRet
  164.  ^
  165.  wmloop
  166.  Æ í
  167.  Æ í
  168.  ╔ `
  169.  ┤ Ö"audio"
  170. special3$ special_field.songs
  171.  ╔ ╨special_field.audio special3$
  172.  ╔ ` Ö"audio"
  173. AlbumName$ album_name.audio
  174. GroupName$ group_name.audio
  175.  
  176. recordnumber% 1
  177.  ┤ £"songqu"
  178.  
  179. sel% 0
  180.  ╪sel% 0
  181.  ╧ ▀
  182.  ísel% 0 p
  183. special3$ special_field.songs
  184.  ╔ ╨ Ö"audio"special_field.audio special3$
  185.  ╔ ` Ö"audio"
  186. AlbumName$ album_name.audio
  187. GroupName$ group_name.audio
  188.  £ ╚
  189.  Æ í
  190.  ┘
  191.  å Ö"audio"
  192.  å Ö"songs"
  193.   µ2:
  194. AlbumQRet: 
  195.  ┤ Ö"audio"
  196. albumt%  A("audio")
  197.  
  198.  ╜ SELECT WHERE ASK    OUser Friendly Replaced with following code
  199.  íAlbmQ% 1 p
  200.  ┬"Enter the ALBUM name","OR a PORTION of the name",4,ret%,AlbumNameRet$
  201.  íret% 0 p wmloop
  202. AlbmQury$ "*" AlbumNameRet$ "*"
  203.  ╔ ╨album_name  AlbmQury$
  204.  ^
  205.  ┬"Enter the GROUP name","OR a PORTION of the name",4,ret%,AlbumNameRet$
  206.  íret% 0 p wmloop
  207. AlbmQury$ "*" AlbumNameRet$ "*"
  208.  ╔ ╨group_name  AlbmQury$
  209.  Æ í
  210.  
  211. albumq% 0
  212. recordnumber% 1
  213.  ┤ Ö"audio"
  214.  ╔ `
  215.  ╪ O B("audio")
  216. albumq% albumq% 1
  217.  ╔ ▒
  218.  ┘
  219.  íalbumq% 0 p
  220.  ┬"No Records selected!","Do you want to try again?",130,ans%
  221.  å Ö"audio"
  222.  íans% 1 p
  223.  wAlbumQRet
  224.  ^
  225.  wmloop
  226.  Æ í
  227.  Æ í
  228.  ┤ £"albumqu"
  229.  ╔ `
  230.  £ ╚
  231. sel% 0
  232.  ╪sel% 0
  233.  ╧ ▀
  234.  ┘
  235.  å Ö"audio"
  236.   µ3:
  237. WideAreaH: 
  238. return_to% 1
  239.  ┤ £"SetQuery"
  240. sel% 0
  241. quryreturn: 
  242.  ╪sel% 0
  243.  ╧ ▀
  244.  ┘
  245.   µ4: ╜ Print
  246.  ┤ £"printer"
  247. sel% 1
  248.  ┬"Feature not available in Shareware Version","Register Today!",139
  249.  wmloop
  250.   Æ ╔
  251.  qury% 0
  252.   wmloop
  253.  
  254. m3: ╜ ma%=3 Exit 
  255.   │mb% wm31
  256. 
  257. 
  258. m31: ╜ OR Exit
  259.   ╩ ┬ ƒ"Exit MuZidex"
  260.   ┬"Confirm Exit...","",148,n%
  261.   ín% 0 wmloop
  262.   å t: ╩ ƒ"": ╩ ┬ ƒ"": ╗
  263.  
  264. m4: ╜ ma=4% Help
  265.  sel% 0
  266.  selector% mb%
  267. HelpLoop:  ╜ entry point for context sensitive help 
  268.   ╔ µselector%
  269.  µ1:
  270.  ┤ £"helpidx"
  271.  µ2: ╜ General Information
  272.  ┤ £"helpgi"
  273.  µ3: ╜ Data Entry
  274.  ┤ £"helpde"
  275.  µ4: ╜ Album Entry
  276.  ┤ £"helpae"
  277.  µ5: ╜ Song Entry
  278.  ┤ £"helpse"
  279.  µ6: ╜ Data Query
  280.  ┤ £"helpdq"
  281.  µ7: ╜ Album Search
  282.  ┤ £"helpaq"
  283.  µ8: ╜ song search
  284.  ┤ £"helpsq"
  285.  µ9: ╜ Wide Area Search
  286.  ┤ £"helpwa"
  287.  µ10: ╜ Dummy Line
  288.  wmloop
  289.  µ11: ╜ About MuZidex
  290.  ┤ £"about"
  291.   Æ ╔
  292.  
  293.   ╪(sel% 0) 
  294. (sel% 1)
  295.  í(sel% 1) p
  296. sel% 0
  297.  £2
  298.  Æ í
  299.  ╧ ▀
  300.   ┘
  301.  
  302. HelpExit: 
  303.   wmloop
  304.  
  305. AlbumEntryH:  ╜ Return label for help
  306.  return_to% 1
  307.   ┤ £"albumde.sbv"
  308.   ╔ ╨special_field  special$
  309.   ╔ `
  310.   £ ╚
  311.   ╔ ╨
  312.   wfloop
  313. 
  314. VEB: ╜ View, Edit, Browse
  315.   ▓"999990.00000"
  316.  Album% 0
  317.  
  318.  f$ "Audio":fkey$ "group_Name":fmd$ "AlbumDE":fmp$ "stkc2"
  319.  
  320.  
  321. 
  322.   ┤ Öf$
  323.   úfkey$
  324.   í £ fmd$ p ┤ £fmd$
  325.  ind$  ú
  326.   ╜ GOSUB sset
  327.   ╩ ƒ"MuZidex DataBase Access"
  328.  
  329.   ╜ File Forms have command only on page 1 to select form on selkey
  330.   ╜ FORM 2
  331.   £ ╚
  332.   Γ e
  333.   wfwait
  334.  
  335. floop: 
  336.   ╜ GOSUB sset
  337.   ╜ GOSUB ssearch
  338.   ╬
  339.  
  340. fwait:  ╜ wait here for pushbutton
  341.  ed% 1
  342.   ╩ ╦"Select a pushbutton option"
  343.   ╧ ▀
  344.   wfwait
  345.  
  346. fedit:  ╜ Edit Pushbutton
  347.   ╜ DEBUG ON ,100
  348.   ╩ ╦"Use TAB or click on field to be edited.  ESC when done."
  349.   ▀ │
  350.   íqury% 1 p wfeditqury
  351.   ┬"Do you want a COPY of this record?","Selecting No will modify THIS record.",130,a%
  352.   ía% 1 p
  353.  ü ]
  354.   Æ í
  355.  
  356. editloop: 
  357.  
  358.   ╔ µsong%
  359.  µ0:
  360.  ía% 1 p
  361. album_name  "New Name"
  362.  öalbum_name,0
  363.  íalbum_name  "New Name" p
  364.      ┬"You MUST change the ID field.","",2
  365.      weditloop
  366.  Æ í
  367.  ^
  368. specialFirst$ special_field
  369.  öalbum_name,0
  370.  Æ í
  371.  µ1:
  372.  ía% 1 p
  373. song_name  "New Name"
  374.  ösong_name,0
  375.  ísong_name  "New Name" p
  376.      ┬"You MUST change the ID field.","",2
  377.      weditloop
  378.  Æ í
  379.  íSong_Length  0 p
  380.     song_Length   8("0.0.0")
  381.  Æ í
  382.  ^
  383.  ösong_name,0
  384.  íSong_Length  0 p
  385.     song_Length   8("0.0.0")
  386.  Æ í
  387.  Æ í
  388.   Æ ╔
  389.   wfedit2 
  390.  
  391. feditqury: 
  392.  ösong_name  qAlbum_name
  393. 
  394. fedit2: 
  395.   ▀ e
  396.   ┬"Is entry correct?",""134,a%
  397.   ía% 1 p
  398.  ╠: ╜ Stores edited data
  399.  í(song% 0)  (qury% 0) p
  400. specialNew$ special_field.audio
  401.  íspecialNew$ specialFirst$ p
  402.  ┤ Ö"songs"
  403.  ═special_field.songs specialNew$
  404.  ╨special_field.songs specialFirst$
  405.  Æ ═
  406.  å Ö"songs"
  407.  Æ í
  408.  Æ í
  409.   ^ ía% 0 p
  410.  ▀ │
  411.  ╔ £ Y: ╜ Re-display form as before edit
  412.   ^ ía% 2 p
  413. a% 0
  414.  ▀ │
  415.  weditloop
  416.   Æ í
  417.  
  418.   ísong% 1 p
  419.  ╔ ╨special_field  special$
  420.  ╔ `
  421.   ^
  422.  ╔ `
  423.   Æ í
  424.  
  425.   íqury% 1 p wquryreturn
  426.   wfloop
  427.  
  428. fenter:  ╜ New Entry Pushbutton
  429.   │ _ wferror
  430.   ╩ ƒ"Add To MuZidex"
  431.   £2
  432.   ╩ ╦"Enter data for new record.  ESC when done."
  433.  
  434. AE1:  ╜ Actual guts of the Add routine.  Checks for a blank form for an
  435.  ╜ end-of-entry
  436.   ü £
  437.   ╬
  438. editloop2: 
  439.   ▀ │
  440.   ╔ µsong%
  441.  µ0:
  442.  öalbum_name,0
  443.  
  444.  µ1:
  445. special_field  special$
  446.  ösong_name,0
  447.  íSong_Length  0 p
  448. song_Length   8("0.0.0")
  449.  Æ í
  450.  
  451.   Æ ╔
  452.   ▀ e
  453.  b% 0
  454.   ┬"Is entry correct?","",134,a%
  455.   ía% 1 p
  456.  ╠ £
  457.  ╔ £ Y
  458.  ┬"Continue with data entry?","",130,b%
  459.   ^ ía% 2 p
  460.  weditloop2
  461.   ^ ía% 0 p
  462.  ╔ £ Y
  463.   Æ í
  464.   íb% 1 p wAE1
  465.   ísong% 1 p
  466.  ╔ ╨special_field  special$
  467.  ╔ `
  468.   ^
  469.  ╔ `
  470.   Æ í
  471.  
  472.   wfloop
  473.  
  474. fdelete:  ╜ Delete Pushbutton
  475.   ╩ ╦"WARNING!  Data will be lost."
  476.   ▀ e
  477.   ísong% 0 p
  478.  ┬"Do you REALLY want to delete this Album?","This operation will also remove the songs associated with this album!",143,a%
  479. special$ special_field.audio
  480.  ┤ Ö"songs"
  481.  ╛ a Ö"songs" ╨special_field.songs special$
  482.  å Ö"songs"
  483.   ^
  484.  ┬"Do you REALLY want to delete this Song?","",143,a%
  485.   Æ í
  486.   ía% 1 p
  487.  ▀ │
  488.  ╔ ╛
  489.  ╔ £ `: ╜ Display first record.
  490.   ^
  491.  ╔ £ Y: ╜ Re-display form as before delete.
  492.   Æ í
  493.   ísong% 1 p
  494.  ╔ ╨special_field  special$
  495.  ╔ `
  496.   ^
  497.  ╔ `
  498.   Æ í
  499.   wfloop
  500. 
  501. findex:  ╜ allow user to adjust index for browsing
  502.   ╩ ╦"Select new Index for Browsing"
  503.   ▀ │
  504.   ┬"Select new index","",7,ret%,ret$
  505.   íret$ "" p úret$
  506.   ísong% 1 p
  507.  ╔ ╨special_field  special$
  508.  ╔ `
  509.   ^
  510.  ╔ `
  511.   Æ í
  512.   wfloop
  513.  
  514. fsongs:  ╜ set up songs
  515. SongEntryH:  ╜ Return label for help
  516.  return_to% 1
  517.   ┤ Ö"songs"
  518.   úSong_Number
  519.   ╔ ╨special_field  special$
  520.   ╔ `
  521.   ┤ £"songde"
  522.   wfloop
  523.  
  524. fsongexit:  ╜ Exit from Song FORM and get the current record
  525.  song% 0
  526.   ┤ £"albumde.sbv"
  527.   ╔ ╨special_field  special$
  528.   ╔ `
  529.   £ ╚
  530.   ╔ ╨
  531.   wfloop
  532.  
  533. Fsearch:  ╜ Setup and run query
  534.  recordnumber% 1
  535.   ▀ e
  536.   í J("tempqury.sbf") p
  537.  ì("tempqury.sbf")
  538.   Æ í
  539.  
  540.   í(Rock% Classical% Country% Blues% Jazz% Pop% Comedy% Ragge% Soundtrack% NewAge% NewWave% Other% Childrens% Religious% Christmas%) 0 p
  541.  ▀ │
  542.  ┬"You MUST select AT LEAST one Music Type","",139
  543.  wquryreturn
  544.   Æ í
  545.  
  546.   í(CD% Recrd% Cassette% Video% EightTrack% ReelToReel%) 0 p
  547.  ▀ │
  548.  ┬"You MUST select AT LEAST one Storage Media","",139
  549.  wquryreturn
  550.   Æ í
  551.  
  552.   íRock% 1 p
  553. S1$ "Rock-N-Roll"
  554.   ^
  555. S1$ "XXXX"
  556.   Æ í
  557.   íClassical% 1 p
  558. S2$ "Classical"
  559.   ^
  560. S2$ "XXXX"
  561.   Æ í
  562.   íCountry% 1 p
  563. S3$ "Country"
  564.   ^
  565. S3$ "XXXX"
  566.   Æ í
  567.   íBlues% 1 p
  568. S4$ "Blues"
  569.   ^
  570. S4$ "XXXX"
  571.   Æ í
  572.   íJazz% 1 p
  573. S5$ "Jazz"
  574.   ^
  575. S5$ "XXXX"
  576.   Æ í
  577.   íPop% 1 p
  578. S6$ "Pop"
  579.   ^
  580. S6$ "XXXX"
  581.   Æ í
  582.   íRagge% 1 p
  583. S7$ "Ragge"
  584.   ^
  585. S7$ "XXXX"
  586.   Æ í
  587.   íSoundtrack% 1 p
  588. S8$ "Soundtrack"
  589.   ^
  590. S8$ "XXXX"
  591.   Æ í
  592.   íComedy% 1 p
  593. S9$ "Comedy"
  594.   ^
  595. S9$ "XXXX"
  596.   Æ í
  597.   íNewAge% 1 p
  598. SA$ "New Age"
  599.   ^
  600. SA$ "XXXX"
  601.   Æ í
  602.   íNewWave% 1 p
  603. SB$ "New Wave"
  604.   ^
  605. SB$ "XXXX"
  606.   Æ í
  607.   íOther% 1 p
  608. SC$ "Other"
  609.   ^
  610. SC$ "XXXX"
  611.   Æ í
  612.   íChildrens% 1 p
  613. SE$ "Childrens"
  614.   ^
  615. SE$ "XXXX"
  616.   Æ í
  617.   íChristmas% 1 p
  618. SF$ "Christmas"
  619.   ^
  620. SF$ "XXXX"
  621.   Æ í
  622.   íReligious% 1 p
  623. SG$ "Religious"
  624.   ^
  625. SG$ "XXXX"
  626.   Æ í
  627.  
  628.   íCD% 1 p
  629. M1$ "Compact_Disk"
  630.   ^
  631. M1$ "X"
  632.   Æ í
  633.   íRecrd% 1 p
  634. M2$ "Record"
  635.   ^
  636. M2$ "X"
  637.   Æ í
  638.   íCassette% 1 p
  639. M3$ "Tape"
  640.   ^
  641. M3$ "X"
  642.   Æ í
  643.   íVideo% 1 p
  644. M4$ "Video"
  645.   ^
  646. M4$ "X"
  647.   Æ í
  648.   íEightTrack% 1 p
  649. M5$ "8-Track"
  650.   ^
  651. M5$ "X"
  652.   Æ í
  653.   íReelToReel% 1 p
  654. M6$ "Reel-to-Reel"
  655.   ^
  656. M6$ "X"
  657.   Æ í
  658.  
  659.  dtrstr1$ "01 01 "  (datsm%,"z9999.")
  660.  datestart%  1(dtrstr1$)
  661.  dtrstr2$ "01 01 "  (datlg%,"z9999.")
  662.  dateend%  1(dtrstr2$)
  663.  
  664.   ┤ Ö"audio"
  665.   íalbumdate% 0 p
  666.  
  667.  ╔ t
  668.  ╨st.audio S1$ 
  669.  
  670. st.audio S2$ 
  671.  
  672. st.audio S3$ 
  673.  
  674. st.audio S4$ 
  675.  
  676. st.audio S5$ 
  677.  
  678. st.audio S6$ 
  679.  
  680. st.audio S7$ 
  681.  
  682. st.audio S8$ 
  683.  
  684. st.audio S9$ 
  685.  
  686. st.audio SA$ 
  687.  
  688. st.audio SB$ 
  689.  
  690. st.audio SC$ 
  691.  
  692. st.audio SE$ 
  693.  
  694. st.audio SF$ 
  695.  
  696. st.audio SG$ 
  697. (source_name  M1$ 
  698. source_name  M2$ 
  699. source_name  M3$ 
  700. source_name  M4$ 
  701. source_name  M5$ 
  702. source_name  M6$)
  703.  q Ö"tempqury"
  704.  
  705.   ^
  706.  ╔ t
  707.  ╨st.audio S1$ 
  708.  
  709. st.audio S2$ 
  710.  
  711. st.audio S3$ 
  712.  
  713. st.audio S4$ 
  714.  
  715. st.audio S5$ 
  716.  
  717. st.audio S6$ 
  718.  
  719. st.audio S7$ 
  720.  
  721. st.audio S8$ 
  722.  
  723. st.audio S9$ 
  724.  
  725. st.audio SA$ 
  726.  
  727. st.audio SB$ 
  728.  
  729. st.audio SC$ 
  730.  
  731. st.audio SE$ 
  732.  
  733. st.audio SF$ 
  734.  
  735. st.audio SG$ 
  736. (source_name  M1$ 
  737. source_name  M2$ 
  738. source_name  M3$ 
  739. source_name  M4$ 
  740. source_name  M5$ 
  741. source_name  M6$) 
  742. (date.audio datestart%)  (date.audio     dateend%)
  743.  q Ö"tempqury"
  744.  
  745.   Æ í
  746.  albumt%  A("audio")
  747.   å Ö"audio"
  748.   ┤ Ö"tempqury"
  749.  albumq%  A("tempqury")
  750.   å Ö"tempqury"
  751.  
  752.   ísong_length% 1 p
  753. lenstart$ "0."  (sonsm%,"99.") ".0"
  754. tstart%  8(lenstart$)
  755. 
  756. lenend$ "0."  (sonlg%,"99.") ".0"
  757. tend%  8(lenend$)
  758.  
  759.  ┤ Ö"tempqury"
  760.  
  761.  ╔ ` Ö"tempqury"
  762.  
  763.  ┤ Ö"Songs"
  764.  ┤ Ö"tempqur2"
  765.  ╛ a Ö"tempqur2"
  766.  
  767.  ╪ O B("tempqury")
  768. special$ special_field.tempqury
  769.  ╔ ╨ Ö"songs"(special_field.songs special$)  (( 8(song_length.songs) tstart%)  ( 8(song_length.songs)     tend%))
  770.  ╔ ` Ö"songs"
  771.  ╪ O B("songs")
  772.      ü Ö"tempqur2"
  773.     song_name.tempqur2 song_name.songs
  774.     special_field.tempqur2 special_field.songs
  775.     Song_Number.tempqur2 Song_Number.songs
  776.     Song_Length.tempqur2 Song_Length.songs
  777.      ╠ Ö"tempqur2"
  778.      ╔ ▒ Ö"songs"
  779.  ┘
  780.  ╔ ▒ Ö"tempqury"
  781.  ┘
  782.  
  783. songt%  A("songs")
  784.  å Ö"songs"
  785. songq%  A("tempqur2")
  786.  å Ö"tempqur2"
  787.   Æ í
  788.  
  789.   ísong_length% 0 p
  790.  íalbumq% 0 p
  791.  ┬"No Records selected!","Do you want to try again?",130,ans%
  792.  íans% 1 p
  793.  wWideAreaH
  794.  ^
  795.  wmloop
  796.  Æ í
  797.  Æ í
  798.  ┤ £"albumqu2"
  799. sel% 0
  800.  ╪sel% 0
  801.  ╧ ▀
  802.  ┘
  803.  å Ö"tempqury"
  804.   ^
  805.  ísongq% 0 p
  806.  ┬"No Records selected!","Do you want to try again?",130,ans%
  807.  íans% 1 p
  808.  wWideAreaH
  809.  ^
  810.  wmloop
  811.  Æ í
  812.  Æ í
  813.  ┤ £"songqu2"
  814.  ┤ Ö"tempqury"
  815. sel% 0
  816.  ╪sel% 0
  817.  ísel% 0 p
  818. special3$ special_field.tempqur2
  819.  ╔ ╨special_field.tempqury special3$
  820.  ╔ ` Ö"tempqury"
  821. AlbumName$ album_name.tempqury
  822. GroupName$ group_name.tempqury
  823.  £ ╚
  824.  Æ í
  825.  ╧ ▀
  826.  ┘
  827.  å Ö"tempqury"
  828.  å Ö"tempqur2"
  829.   Æ í
  830.  
  831.  sel% 1
  832.   wquryreturn
  833.  
  834.  
  835. spanel: 
  836.   │ _ wserror
  837.  err% 0
  838.   ╩ ╦"Browse Mode activated, use STOP to exit."
  839.  
  840. spanel2: 
  841.   ╧ Γ
  842.   │ _ wferror
  843.   ╔ ╨
  844.   íerr% 1 p é │
  845.  err% 0
  846.   ╜ GOSUB sset
  847.   wfloop
  848.  
  849. serror:  é e
  850.   ┬ (( &),"",2,a%
  851.  err% 1
  852.   ╔ £ Y: yspanel2
  853.  
  854. sset: 
  855.   ík% 1 pckey$ fkey$$
  856.   ík% 2 pckey% fkey$$
  857.  
  858. ssearch: 
  859.   ╔ £ Ñind$$
  860.  
  861. ssearch2:  ╜ loop until correct record found
  862.   ík% 1 p ífkey$$ ckey$ p ├
  863.   ík% 2 p ífkey$$ ckey% p ├
  864.   ╔ £ ▒
  865.   wssearch2
  866.  
  867. fexit: 
  868.   å Öf$
  869.   wmloop
  870.  
  871. ferror:  ╜ general error trap
  872.  res% 0
  873.   ╜ a% = ERRNO :A$ = STR$ (a%)
  874.   ╜ REQUEST A$,"",139
  875.   í( & 11) 
  876. (err% 11) p
  877. res% 11
  878.   ^ í & 57 p
  879.  ┬"Record already exists with this key",""2,a%:res% 2
  880.   ^ í & 50 p
  881. res% 4
  882.   ^ í( & 3) 
  883. ( & 4) 
  884. (err% 3) 
  885. (err% 4) p
  886.  ┬"Print Command Failed","Printer Off or Not On-Line",139
  887. res% 5
  888.   ^
  889.  ┬ (( &),"Press OK to make another selection",114,a%: ía% 1 pres% 3
  890.   Æ í
  891.  
  892.   íerr% 0 p
  893.  íerr% 1 perr% 0: wmloop
  894.  íerr% 3 perr% 0: wmloop
  895.  íerr% 4 perr% 0: ╔ £ `: wfloop
  896.   ^
  897.  íres% 1 p y
  898.  íres% 2 p yfloop
  899.  íres% 3 p ymloop
  900.  íres% 4 p ╔ £ `: yfloop
  901.  íres% 5 p yVEB
  902.  íres% 11 p ymloop
  903.   Æ í
  904.   É
  905.  
  906.  
  907.