diff --git a/gui/m291/src/m291.tal b/gui/m291/src/m291.tal index 401dc9b..b36b343 100644 --- a/gui/m291/src/m291.tal +++ b/gui/m291/src/m291.tal @@ -276,17 +276,20 @@ #0005 ADD2 LDAk [ LIT ". ] EQU ?&hidden is-folder ?&folder is-mp3 ?&mp3 - ;mem/misc [ LIT2 00 -lines/misc ] LDZ ( CELLSIZE ) #60 SFT2 ADD2 + ;mem/misc [ LIT2 00 -lines/misc ] LDZ + ( CELLSIZE ) #60 SFT2 ADD2 .lines/misc LDZ INC .lines/misc STZ JMP2r &folder ( line* -- ) - ;mem/folders [ LIT2 00 -lines/folders ] LDZ ( CELLSIZE ) #60 SFT2 ADD2 + ;mem/folders [ LIT2 00 -lines/folders ] LDZ + ( CELLSIZE ) #60 SFT2 ADD2 .lines/folders LDZ INC .lines/folders STZ JMP2r &mp3 ( line* -- ) - ;mem/tracks [ LIT2 00 -lines/tracks ] LDZ ( CELLSIZE ) #60 SFT2 ADD2 + ;mem/tracks [ LIT2 00 -lines/tracks ] LDZ + ( CELLSIZE ) #60 SFT2 ADD2 .lines/tracks LDZ INC .lines/tracks STZ JMP2r @@ -312,19 +315,24 @@ POP JMP2r &tracks ( id -- ) - #00 SWP ( CELLSIZE ) #60 SFT2 ;mem/tracks ADD2 ! + #00 SWP + ( CELLSIZE ) #60 SFT2 ;mem/tracks ADD2 ! &misc ( id -- ) - #00 SWP ( CELLSIZE ) #60 SFT2 ;mem/misc ADD2 ! + #00 SWP + ( CELLSIZE ) #60 SFT2 ;mem/misc ADD2 ! &folder ( id -- ) - #00 SWP ( CELLSIZE ) #60 SFT2 ;mem/folders ADD2 ! + #00 SWP + ( CELLSIZE ) #60 SFT2 ;mem/folders ADD2 ! @ ( file* -- ) ( | start ID3 ) ;dict/no-title ;id3/title ;dict/no-artist ;id3/artist ;dict/no-album ;id3/album + [ LIT2 01 -playing ] STZ + fit-window ( | request ) ;dict/load-cmd ;path @@ -417,13 +425,7 @@ #0018 [ LIT2 00 -playing ] LDZ EQU ?{ #0080 ADD2 } .Screen/y DEO2 [ LIT2 80 -Screen/pixel ] DEO - ( | status ) - #0008 .Screen/x DEO2 - #0004 .Screen/y DEO2 - ;path #01 - ( | spacer ) - #0014 .Screen/y DEO2 - ;line-icn + ( | content ) #001c [ LIT2 00 -playing ] LDZ EQU ?{ #0080 ADD2 } .Screen/y DEO2 @@ -439,6 +441,19 @@ ;mem/misc .lines/misc LDZ #00 .selection LDZ ! } JMP2r +@ ( -- ) + ( | clear ) + #0000 .Screen/x DEO2 + #0014 .Screen/y DEO2 + [ LIT2 a0 -Screen/pixel ] DEO + ( | draw ) + #0008 .Screen/x DEO2 + #0004 .Screen/y DEO2 + ;path #01 + ( | spacer ) + #0014 .Screen/y DEO2 + ;line-icn ! + @ ( -- ) #ffff ;/last STA2 #ffff ;/last STA2 @@ -605,7 +620,8 @@ .Screen/y DEO2 } ( | normal ) #0008 .Screen/x DEO2 - #00 OVR ( CELLSIZE ) #60 SFT2 [ LIT2 &t $2 ] ADD2 STHr + #00 OVR + ( CELLSIZE ) #60 SFT2 [ LIT2 &t $2 ] ADD2 STHr .Screen/y DEI2k #0010 ADD2 ROT DEO2 INC GTHk ?&>l POP2 JMP2r