diff --git a/gui/m291/src/m291.tal b/gui/m291/src/m291.tal index 9cfabf1..8a5b341 100644 --- a/gui/m291/src/m291.tal +++ b/gui/m291/src/m291.tal @@ -271,6 +271,11 @@ #00 SWP #40 SFT2 ;mem/folders ADD2 ! @ ( file* -- ) + ( | start ID3 ) + ;dict/no-title ;id3/title + ;dict/no-artist ;id3/artist + ;dict/no-album ;id3/album + ( | request ) ;dict/load-cmd ;path / @@ -322,16 +327,16 @@ @|id3 ) @ ( id3* -- ) - [ LIT ": ] find-next INC2 ;id3/title - JMP2r + ;id3/title + [ LIT ": ] find-next INC2 ;id3/title ! @ ( id3* -- ) - [ LIT ": ] find-next INC2 ;id3/artist - JMP2r + ;id3/artist + [ LIT ": ] find-next INC2 ;id3/artist ! @ ( id3* -- ) - [ LIT ": ] find-next INC2 ;id3/album - JMP2r + ;id3/album + [ LIT ": ] find-next INC2 ;id3/album ! ( @|path ) @@ -386,21 +391,27 @@ @ ( -- ) #ffff ;/last STA2 #ffff ;/last STA2 - ( >> ) - -@ ( -- ) - #0080 .Screen/x DEO2 - #0020 .Screen/y DEO2 - ;id3/title #01 - #0080 .Screen/x DEO2 - #0030 .Screen/y DEO2 - ;id3/artist #01 - #0080 .Screen/x DEO2 - #0040 .Screen/y DEO2 - ;id3/album #01 + + + ! +@ ( -- ) + #0080 .Screen/x DEO2 + #0020 .Screen/y DEO2 + ;id3/title #01 ! + +@ ( -- ) + #0080 .Screen/x DEO2 + #0030 .Screen/y DEO2 + ;id3/artist #01 ! + +@ ( -- ) + #0080 .Screen/x DEO2 + #0040 .Screen/y DEO2 + ;id3/album #01 ! + @ ( -- ) #0070 .Screen/x DEO2 #0058 .Screen/y DEO2 @@ -618,6 +629,13 @@ INC2r INC2 LDAk ?&>w POP2 POP2r JMP2r +@ ( str* -- ) + #00 ROT ROT + &>w ( -- ) + STAk INC2 LDAk ?&>w + STA + JMP2r + @lcap ( str* -- next-line* ) &w ( -- ) @@ -677,6 +695,9 @@ &mpg-cmd "mpg123 20 "-R $1 &load-cmd "load 20 $1 &pause-cmd "pause 0a $1 + &no-title "Unknown 20 "Title $1 + &no-artist "Unknown 20 "Artist $1 + &no-album "Unknown 20 "Album $1 ~src/assets.tal