From: Dirk B. <db...@us...> - 2005-05-26 08:29:41
|
Update of /cvsroot/win32forth/win32forth/apps/Player4 In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv22449/apps/Player4 Modified Files: Catalog.f Mediatree.f PLAYER4.F Pl_MciWindow.f TrayWindow.f Log Message: Changed Player4 to work with ExtStruct.f instead Struct.f to make ExtStruct.f work within real applications. Index: PLAYER4.F =================================================================== RCS file: /cvsroot/win32forth/win32forth/apps/Player4/PLAYER4.F,v retrieving revision 1.11 retrieving revision 1.12 diff -C2 -d -r1.11 -r1.12 *** PLAYER4.F 15 May 2005 17:21:52 -0000 1.11 --- PLAYER4.F 26 May 2005 08:29:29 -0000 1.12 *************** *** 37,41 **** needs sub_dirs.f needs number.f - needs struct.f needs w_search.f needs shell_r.f --- 37,40 ---- Index: Catalog.f =================================================================== RCS file: /cvsroot/win32forth/win32forth/apps/Player4/Catalog.f,v retrieving revision 1.7 retrieving revision 1.8 diff -C2 -d -r1.7 -r1.8 *** Catalog.f 16 May 2005 16:18:13 -0000 1.7 --- Catalog.f 26 May 2005 08:29:29 -0000 1.8 *************** *** 1,5 **** anew catalog.f \ 4-4-2005 ! needs struct.f needs w_search.f needs shell_r.f --- 1,6 ---- anew catalog.f \ 4-4-2005 ! needs ExtStruct.f ! needs Pl_Toolset.f needs w_search.f needs shell_r.f *************** *** 15,19 **** \ Define the configuration of the database ! struct{ \ ConfigDef in PathMediaFiles.dat MAX-PATH Field: PathMediaFiles DWORD #free-list --- 16,20 ---- \ Define the configuration of the database ! :struct ConfigDef \ ConfigDef in PathMediaFiles.dat MAX-PATH Field: PathMediaFiles DWORD #free-list *************** *** 21,27 **** DWORD first-free-record DWORD MaximumRandomLevel ! }struct ConfigDef ! sizeof ConfigDef mkstruct: Config s" \" Config PathMediaFiles place create DatFile$ ," PathMediaFiles.dat" sizeof ConfigDef allot --- 22,28 ---- DWORD first-free-record DWORD MaximumRandomLevel ! ;struct ! sizeof ConfigDef mkstruct: Config s" \" Config ConfigDef PathMediaFiles place create DatFile$ ," PathMediaFiles.dat" sizeof ConfigDef allot *************** *** 32,36 **** 36 constant /Title ! struct{ \ catalog /file_name Field: File_name BYTE Cnt_File_name --- 33,37 ---- 36 constant /Title ! :struct RecordDef \ catalog /file_name Field: File_name BYTE Cnt_File_name *************** *** 48,52 **** DWORD #played DWORD Not_used1 ! }struct RecordDef \ database part --- 49,53 ---- DWORD #played DWORD Not_used1 ! ;struct \ database part *************** *** 151,161 **** ; ! : in-freelist? ( adr - flag ) s" Deleted- c@ " EVALUATE ; IMMEDIATE : free-list-check ( n - ) n>record dup in-freelist? if vadr-config >r record>r dup r@ #free-list @ 0= ! if dup r@ first-free-record ! dup r>record Deleted-thread ! ! else r@ prev-free-record @ r>record Deleted-thread ! then r@ prev-free-record ! 1 r> #free-list +! --- 152,162 ---- ; ! : in-freelist? ( adr - flag ) s" RecordDef Deleted- c@ " EVALUATE ; IMMEDIATE : free-list-check ( n - ) n>record dup in-freelist? if vadr-config >r record>r dup r@ #free-list @ 0= ! if dup r@ first-free-record ! dup r>record RecordDef Deleted-thread ! ! else r@ prev-free-record @ r>record RecordDef Deleted-thread ! then r@ prev-free-record ! 1 r> #free-list +! *************** *** 165,169 **** : next-in-freelist ( vadr-config - rel-ptr ) ! first-free-record @ r>record Deleted-thread @ ; --- 166,170 ---- : next-in-freelist ( vadr-config - rel-ptr ) ! first-free-record @ r>record RecordDef Deleted-thread @ ; *************** *** 181,195 **** : delete-record ( n - ) ! dup true swap n>record dup>r Deleted- c! ! 0 r> Excluded- c! free-list-check ; : mark-as-undeleted ( adr - ) ! false 2dup swap Deleted- c! ! swap 2dup Excluded- c! ! 2dup RandomLevel ! ! 2dup #played ! ! Played- c! ; --- 182,196 ---- : delete-record ( n - ) ! dup true swap n>record dup>r RecordDef Deleted- c! ! 0 r> RecordDef Excluded- c! free-list-check ; : mark-as-undeleted ( adr - ) ! false 2dup swap RecordDef Deleted- c! ! swap 2dup RecordDef Excluded- c! ! 2dup RecordDef RandomLevel ! ! 2dup RecordDef #played ! ! RecordDef Played- c! ; *************** *** 198,202 **** : undelete-all ( - ) vadr-config first-free-record @ vadr-config #free-list @ 0 ! ?do r>record dup Deleted-thread @ swap mark-as-undeleted loop drop build-free-list --- 199,203 ---- : undelete-all ( - ) vadr-config first-free-record @ vadr-config #free-list @ 0 ! ?do r>record dup RecordDef Deleted-thread @ swap mark-as-undeleted loop drop build-free-list *************** *** 206,210 **** : delete-record-in-collection ( n - ) ! dup n>record Excluded- c@ 0= if delete-record else drop --- 207,211 ---- : delete-record-in-collection ( n - ) ! dup n>record RecordDef Excluded- c@ 0= if delete-record else drop *************** *** 225,247 **** ; ! : by_FileName ( - ) /file_name to key-len 0 File_name to key-start ; ! : by_FileSize ( - ) 1 cells to key-len 0 FileSize to key-start ; ! : not-deleted? ( rec-adr - flag ) s" deleted- c@ 0= " EVALUATE ; IMMEDIATE : _list-record ( rec-adr - ) dup>r not-deleted? if cr r@ . ! r@ File_name r@ Cnt_File_name c@ type-space ! r@ #played ? ! r@ RandomLevel ? ! r@ Played- c@ . ! r@ Excluded- c@ . ! r@ FileSize @ 12 U,.R then r>drop ; ! : record-not-played ( n - ) n>record 0 swap Played- c! ; : set-all-not-played ( - ) 0 for-all-records-from# record-not-played ; --- 226,248 ---- ; ! : by_FileName ( - ) /file_name to key-len 0 RecordDef File_name to key-start ; ! : by_FileSize ( - ) 1 cells to key-len 0 RecordDef FileSize to key-start ; ! : not-deleted? ( rec-adr - flag ) s" RecordDef deleted- c@ 0= " EVALUATE ; IMMEDIATE : _list-record ( rec-adr - ) dup>r not-deleted? if cr r@ . ! r@ RecordDef File_name r@ Cnt_File_name c@ type-space ! r@ RecordDef #played ? ! r@ RecordDef RandomLevel ? ! r@ RecordDef Played- c@ . ! r@ RecordDef Excluded- c@ . ! r@ RecordDef FileSize @ 12 U,.R then r>drop ; ! : record-not-played ( n - ) n>record 0 swap RecordDef Played- c! ; : set-all-not-played ( - ) 0 for-all-records-from# record-not-played ; *************** *** 250,262 **** : list-database ( - ) map-database list-records unmap-database ; ! : change-randomlevel ( level n - ) n>record over random swap RandomLevel ! ; : sort_by_filename ( - ) by_FileName sort-database ; : sort_by_filesize ( - ) by_FileSize sort-database-bin ; : sort-by_RandomLevel ( - ) ! 1 cells to key-len ! 0 #played to key-start sort-database-bin ! 0 RandomLevel to key-start sort-database-bin ! 0 Deleted- to key-start sort-database-bin ; --- 251,263 ---- : list-database ( - ) map-database list-records unmap-database ; ! : change-randomlevel ( level n - ) n>record over random swap RecordDef RandomLevel ! ; : sort_by_filename ( - ) by_FileName sort-database ; : sort_by_filesize ( - ) by_FileSize sort-database-bin ; : sort-by_RandomLevel ( - ) ! 1 cells to key-len ! 0 RecordDef #played to key-start sort-database-bin ! 0 RecordDef RandomLevel to key-start sort-database-bin ! 0 RecordDef Deleted- to key-start sort-database-bin ; *************** *** 267,272 **** ; ! : incr-#played ( adr - ) #played dup @ 1+ swap ! ; ! : mark-played ( adr - ) -1 swap Played- c! ; internal --- 268,273 ---- ; ! : incr-#played ( adr - ) RecordDef #played dup @ 1+ swap ! ; ! : mark-played ( adr - ) -1 swap RecordDef Played- c! ; internal *************** *** 281,289 **** : (add-file) ( wHndl addr len file-size - wHndl ) \ add a file to the catalog InlineRecord [ sizeof RecordDef ] literal erase ! >struct InlineRecord FileSize ! >r ! >struct InlineRecord File_name r@ cmove ! r@ >struct InlineRecord Cnt_File_name c! ! 100 random >struct InlineRecord RandomLevel ! r>drop dup write-record --- 282,290 ---- : (add-file) ( wHndl addr len file-size - wHndl ) \ add a file to the catalog InlineRecord [ sizeof RecordDef ] literal erase ! struct, InlineRecord RecordDef FileSize ! >r ! struct, InlineRecord RecordDef File_name r@ cmove ! r@ struct, InlineRecord RecordDef Cnt_File_name c! ! 100 random struct, InlineRecord RecordDef RandomLevel ! r>drop dup write-record *************** *** 303,307 **** : next-not-played ( - n ) \ -1 means done. -1 #records last-selected-rec \ Starting from the last-selected record ! do i n>record dup Excluded- c@ not swap Played- c@ 0= and if drop i leave then --- 304,308 ---- : next-not-played ( - n ) \ -1 means done. -1 #records last-selected-rec \ Starting from the last-selected record ! do i n>record dup RecordDef Excluded- c@ not swap RecordDef Played- c@ 0= and if drop i leave then *************** *** 319,326 **** database$ count file-exist? and \ database-mhndl map-file-open? or MciDebug? ! if cr ." catalog-exist? " dup . ! then ! ; \ -------------------------------------------------------------------------- --- 320,329 ---- database$ count file-exist? and \ database-mhndl map-file-open? or + [defined] MciDebug? [if] MciDebug? ! if cr ." catalog-exist? " dup . ! then ! [then] ! ; \ -------------------------------------------------------------------------- *************** *** 356,360 **** : search-record ( arg-adr$ count #rec - arg-adr$ count ) n>record dup>r record-size 2over 2swap false *search ! not nip nip r> Excluded- c! ; --- 359,363 ---- : search-record ( arg-adr$ count #rec - arg-adr$ count ) n>record dup>r record-size 2over 2swap false *search ! not nip nip r> RecordDef Excluded- c! ; *************** *** 389,391 **** \ debug ask-max-random-level \s ! |