Commit e648207e authored by Robert Sprowson's avatar Robert Sprowson
Browse files

Fix for 'set type' writeable icon being out of step with the disc.

Adjust clicking would recreate the menu immediately after the operation but before the next wimp poll when the directory gets recached, so the first entry in the cache is manually fixed up so the recreated menu is right (the files all get refreshed later anyway).
Collapsed switch 'Fix003', after 21 years of testing it's safe to assume it's good.
Reinstated ExtractCMOSOptions conditional on not OptionsAreInRAM so that combination still assembles.
Optimise MUL/ADD into MLA where possible, and set 'S' flag on ALU operations when followed by TEQ#0.
Tested with & without filer action running, fixes ticket 254.

Version 2.26. Tagged as 'Filer-2_26'
parent 4450a4ed
...@@ -11,13 +11,13 @@ ...@@ -11,13 +11,13 @@
GBLS Module_HelpVersion GBLS Module_HelpVersion
GBLS Module_ComponentName GBLS Module_ComponentName
GBLS Module_ComponentPath GBLS Module_ComponentPath
Module_MajorVersion SETS "2.25" Module_MajorVersion SETS "2.26"
Module_Version SETA 225 Module_Version SETA 226
Module_MinorVersion SETS "" Module_MinorVersion SETS ""
Module_Date SETS "09 Mar 2010" Module_Date SETS "23 Oct 2010"
Module_ApplicationDate SETS "09-Mar-10" Module_ApplicationDate SETS "23-Oct-10"
Module_ComponentName SETS "Filer" Module_ComponentName SETS "Filer"
Module_ComponentPath SETS "castle/RiscOS/Sources/Desktop/Filer" Module_ComponentPath SETS "castle/RiscOS/Sources/Desktop/Filer"
Module_FullVersion SETS "2.25" Module_FullVersion SETS "2.26"
Module_HelpVersion SETS "2.25 (09 Mar 2010)" Module_HelpVersion SETS "2.26 (23 Oct 2010)"
END END
/* (2.25) /* (2.26)
* *
* This file is automatically maintained by srccommit, do not edit manually. * This file is automatically maintained by srccommit, do not edit manually.
* Last processed by srccommit version: 1.1. * Last processed by srccommit version: 1.1.
* *
*/ */
#define Module_MajorVersion_CMHG 2.25 #define Module_MajorVersion_CMHG 2.26
#define Module_MinorVersion_CMHG #define Module_MinorVersion_CMHG
#define Module_Date_CMHG 09 Mar 2010 #define Module_Date_CMHG 23 Oct 2010
#define Module_MajorVersion "2.25" #define Module_MajorVersion "2.26"
#define Module_Version 225 #define Module_Version 226
#define Module_MinorVersion "" #define Module_MinorVersion ""
#define Module_Date "09 Mar 2010" #define Module_Date "23 Oct 2010"
#define Module_ApplicationDate "09-Mar-10" #define Module_ApplicationDate "23-Oct-10"
#define Module_ComponentName "Filer" #define Module_ComponentName "Filer"
#define Module_ComponentPath "castle/RiscOS/Sources/Desktop/Filer" #define Module_ComponentPath "castle/RiscOS/Sources/Desktop/Filer"
#define Module_FullVersion "2.25" #define Module_FullVersion "2.26"
#define Module_HelpVersion "2.25 (09 Mar 2010)" #define Module_HelpVersion "2.26 (23 Oct 2010)"
#define Module_LibraryVersionInfo "2:25" #define Module_LibraryVersionInfo "2:26"
...@@ -65,21 +65,20 @@ StartActionWindow Entry "r1-r6" ...@@ -65,21 +65,20 @@ StartActionWindow Entry "r1-r6"
SWI XWimp_StartTask SWI XWimp_StartTask
EXIT EXIT
[ :LNOT: OptionsAreInRAM
; ExtractCMOSOptions - no longer needed. Options stored in fileraction_options ExtractCMOSOptions Entry "r3"
; word within module workspace. BL ReadCMOSBits
;ExtractCMOSOptions Entry "r3" MOV r2, #0
; BL ReadCMOSBits TST r3, #confirm_cmos_bit
; MOV r2, #0 ORRNE r2, r2, #Action_OptionConfirm
; TST r3, #confirm_cmos_bit TST r3, #verbose_cmos_bit
; ORRNE r2, r2, #Action_OptionConfirm ORRNE r2, r2, #Action_OptionVerbose
; TST r3, #verbose_cmos_bit TST r3, #force_cmos_bit
; ORRNE r2, r2, #Action_OptionVerbose ORRNE r2, r2, #Action_OptionForce
; TST r3, #force_cmos_bit TST r3, #newer_cmos_bit
; ORRNE r2, r2, #Action_OptionForce ORRNE r2, r2, #Action_OptionNewer
; TST r3, #newer_cmos_bit EXIT
; ORRNE r2, r2, #Action_OptionNewer ]
; EXIT
SendSelectedFiles Entry "r1-r5" SendSelectedFiles Entry "r1-r5"
10 CMP r5, #Nowt 10 CMP r5, #Nowt
......
...@@ -346,9 +346,8 @@ click_select_type10 ROUT ; NOENTRY ...@@ -346,9 +346,8 @@ click_select_type10 ROUT ; NOENTRY
70 TST r2, #button_left_10 70 TST r2, #button_left_10
[ Fix003
MOVNE r2, #Nowt MOVNE r2, #Nowt
]
BLNE ClearAllSelections ; SELect pressed in empty space BLNE ClearAllSelections ; SELect pressed in empty space
EXIT EXIT
......
...@@ -485,12 +485,8 @@ DecodeMenu_File_Copy ROUT ; NOENTRY ...@@ -485,12 +485,8 @@ DecodeMenu_File_Copy ROUT ; NOENTRY
99 ; 99 ;
[ clearsel_file_copy [ clearsel_file_copy
[ Fix003 MOV r2, #Nowt ; That may force a recache of this dir so we may as well
MOV r2, #Nowt BL ClearAllSelections ; remove all selections
]
; That may force a recache of this dir
; so we may as well ... >>>a186<<<
BL ClearAllSelections ; Remove all selections
] ]
EXIT EXIT
] ]
...@@ -531,12 +527,8 @@ DecodeMenu_File_Rename ROUT ; NOENTRY ...@@ -531,12 +527,8 @@ DecodeMenu_File_Rename ROUT ; NOENTRY
BL DoOSCLIInBoxLookup ; SMC: look up command window title BL DoOSCLIInBoxLookup ; SMC: look up command window title
[ clearsel_file_rename [ clearsel_file_rename
[ Fix003 MOV r2, #Nowt ; That may force a recache of this dir so we may as well
MOV r2, #Nowt BL ClearAllSelections ; remove all selections
]
; This may force a recache of this dir
; so we may as well ... >>>a186<<<
BL ClearAllSelections ; Remove all selections
] ]
EXIT EXIT
...@@ -868,12 +860,8 @@ DecodeMenu_File_Delete ROUT ; NOENTRY ...@@ -868,12 +860,8 @@ DecodeMenu_File_Delete ROUT ; NOENTRY
99 ; 99 ;
[ clearsel_file_delete [ clearsel_file_delete
[ Fix003 MOV r2, #Nowt ; That may force a recache of this dir so we may as well
MOV r2, #Nowt BL ClearAllSelections ; remove all selections
]
; May not have deleted all...
; Or not recached >>>a186 conform<<<
BL ClearAllSelections ; Remove all selections
] ]
EXIT EXIT
...@@ -976,11 +964,8 @@ DecodeMenu_File_Count ROUT ; NOENTRY ...@@ -976,11 +964,8 @@ DecodeMenu_File_Count ROUT ; NOENTRY
99 ; 99 ;
[ clearsel_file_count [ clearsel_file_count
[ Fix003 MOV r2, #Nowt ; That may force a recache of this dir so we may as well
MOV r2, #Nowt BL ClearAllSelections ; remove all selections
]
BL ClearAllSelections ; This is preferred to leaving
; selection around >>>a186<<<
] ]
EXIT EXIT
...@@ -1030,19 +1015,19 @@ DecodeMenu_File_Stamp ROUT ; NOENTRY ...@@ -1030,19 +1015,19 @@ DecodeMenu_File_Stamp ROUT ; NOENTRY
; Set file type ; Set file type
DecodeMenu_File_SetType ROUT ; NOENTRY DecodeMenu_File_SetType ROUT ; NOENTRY
[ actionwind
MOV r0, #FSControl_FileTypeFromString MOV r0, #FSControl_FileTypeFromString
ADR r1, ms_writeable_filetype ADR r1, ms_writeable_filetype
SWI XOS_FSControl SWI XOS_FSControl
EXIT VS EXIT VS
[ actionwind
[ version >= 138 ; Check if configuration calls for filer_action [ version >= 138 ; Check if configuration calls for filer_action
Push "r0-r2" Push "r1-r2"
MOV R0,#&A1 MOV R0,#&A1
MOV R1,#FileSwitchCMOS MOV R1,#FileSwitchCMOS
SWI XOS_Byte SWI XOS_Byte
MOVVS R2,#0 MOVVS R2,#0
TST R2,#4 TST R2,#4
Pull "r0-r2" Pull "r1-r2"
MOVNE r0,#0 MOVNE r0,#0
MOVEQ r0, #Filer_Action_Memory_Others MOVEQ r0, #Filer_Action_Memory_Others
BLEQ StartActionWindow BLEQ StartActionWindow
...@@ -1053,13 +1038,17 @@ DecodeMenu_File_SetType ROUT ; NOENTRY ...@@ -1053,13 +1038,17 @@ DecodeMenu_File_SetType ROUT ; NOENTRY
BL StartActionWindow BL StartActionWindow
] ]
BVS %FT01 BVS %FT01
TEQ r0, #0 TEQ r0, #0
BEQ %FT01 BEQ %FT01
LDR r1, sel_dirname LDR r1, sel_dirname
SWI XFilerAction_SendSelectedDirectory SWI XFilerAction_SendSelectedDirectory
BVS %FT01 BVS %FT01
BL SendSelectedFiles BL SendSelectedFiles
BVS %FT01 BVS %FT01
STR r2, userdata STR r2, userdata
MOV r1, #Action_Setting_Type MOV r1, #Action_Setting_Type
[ OptionsAreInRAM [ OptionsAreInRAM
...@@ -1070,16 +1059,18 @@ DecodeMenu_File_SetType ROUT ; NOENTRY ...@@ -1070,16 +1059,18 @@ DecodeMenu_File_SetType ROUT ; NOENTRY
ADR r3, userdata ADR r3, userdata
MOV r4, #4 MOV r4, #4
SWI XFilerAction_SendStartOperation SWI XFilerAction_SendStartOperation
B %FT99 B %FT95
01 ; 01
CLRV CLRV ; Can't use filer action, fall back to command window mode
] ]
STR r2, userdata ; Retain decoded type
ADR r0, settype_commandtitle ADR r0, settype_commandtitle
BL messagetrans_lookup ; SMC: look up command window title BL messagetrans_lookup ; SMC: look up command window title
SWI XWimp_CommandWindow SWI XWimp_CommandWindow
EXIT VS EXIT VS
MOV r7, #0 ; Close command window with prompt MOV r7, #0 ; Close command window with prompt
MOV r6, r5 ; Keep a copy of the type and selection
05 CMP r5,#Nowt 05 CMP r5,#Nowt
BEQ %FT90 ; [finished] BEQ %FT90 ; [finished]
...@@ -1105,20 +1096,31 @@ DecodeMenu_File_SetType ROUT ; NOENTRY ...@@ -1105,20 +1096,31 @@ DecodeMenu_File_SetType ROUT ; NOENTRY
49 BL GetSelection 49 BL GetSelection
B %BT05 B %BT05
50 BL LocalReportError 50 BL LocalReportError
MOV r7, #-1 ; Close command window without prompt MOV r7, #-1 ; Close command window without prompt
90 MOV r0, r7 90 MOV r0, r7
SWI XWimp_CommandWindow SWI XWimp_CommandWindow
MOV r5, r6 ; Restore start of selection
99 ; 95 CMP r5,#Nowt
BEQ %FT99 ; [finished]
LDRB r14, [r5, #df_type] ; Set filetype only applies to files
TEQ r14, #dft_file
BEQ %FT97
BL GetSelection
B %BT95
97 LDR r14, userdata ; Stamp the cached copy of the first found file in the selection.
MOV r14, r14, LSL#8 ; This is needed because a right click on the menu will recreate the menu
ORR r14, r14, #&FC000001 ; before the dir has been recached after a wimp poll, leaving it out of sync
ORR r14, r14, #&03F00000 ; with the copy on disc. The time stamp is set to &01xxxxxxxx just incase the
STR r14, [r5, #df_load] ; file was previously unstamped, it's proper value will be recached later.
99
[ clearsel_file_settype [ clearsel_file_settype
[ Fix003 MOV r2, #Nowt ; That may force a recache of this dir so we may as well
MOV r2, #Nowt BL ClearAllSelections ; remove all selections
]
BL ClearAllSelections ; This is preferred to leaving
; selection around >>>a186<<<
] ]
EXIT EXIT
...@@ -1157,11 +1159,8 @@ DecodeMenu_File_Help ROUT ; NOENTRY ...@@ -1157,11 +1159,8 @@ DecodeMenu_File_Help ROUT ; NOENTRY
90 90
[ clearsel_file_help [ clearsel_file_help
[ Fix003 MOV r2, #Nowt ; That may force a recache of this dir so we may as well
MOV r2, #Nowt BL ClearAllSelections ; remove all selections
]
BL ClearAllSelections ; This is preferred to leaving
; selection around >>>a186<<<
] ]
EXIT EXIT
...@@ -1179,40 +1178,6 @@ DecodeMenu_NewDir ROUT ; NOENTRY ...@@ -1179,40 +1178,6 @@ DecodeMenu_NewDir ROUT ; NOENTRY
cdir_click_name DCB "Directory",0 cdir_click_name DCB "Directory",0
;[ debug
;DLINE "NewDir menu select"
;]
; ADR r1, dirnamebuffer ; 'CDir menudir.newleaf'
; LDR r1, dirnamebuffer ; 'CDir menudir.newleaf'
; ADR r2, star_cdir_prefix
; BL strcpy
; LDR r2, sel_dirname
; BL strcat_excludingspaces
; [ version >= 138
; ADRL r2, ms_writeable_dirname ; Loophole allows for spaces here!
; |
; ADRL r2, ms_writeable_leafname ; Loophole allows for spaces here!
; ]
; BL AppendLeafnameToDirname
;
; MOV r0, r1
; BL DoOSCLIInBox
;
;
;[ clearsel_newdir
; [ Fix003
; MOV r2, #Nowt
; ]
; ; This may force a recache of this dir
; ; so we may as well ... >>>a186<<<
; BL ClearAllSelections ; Remove all selections
;]
; EXIT
;star_cdir_prefix
; DCB "CDir ", 0 ; Needs space
; ALIGN
; ............................................................................. ; .............................................................................
; Count the given directory ; Count the given directory
......
...@@ -215,9 +215,7 @@ file_drag ROUT ; NOENTRY ...@@ -215,9 +215,7 @@ file_drag ROUT ; NOENTRY
49 ; 49 ;
[ clearsel_copymove [ clearsel_copymove
[ Fix003
MOV r2, #Nowt MOV r2, #Nowt
]
BL ClearAllSelections BL ClearAllSelections
] ]
B %FT90 ; go home B %FT90 ; go home
...@@ -731,9 +729,7 @@ copysave_drag ROUT ; NOENTRY ...@@ -731,9 +729,7 @@ copysave_drag ROUT ; NOENTRY
80 ; 80 ;
[ clearsel_file_copy [ clearsel_file_copy
[ Fix003
MOV r2, #Nowt MOV r2, #Nowt
]
BL ClearAllSelections BL ClearAllSelections
BL NobbleMenuTree BL NobbleMenuTree
| |
......
...@@ -84,19 +84,14 @@ NobbleMenuTree EntryS "r0, r1" ...@@ -84,19 +84,14 @@ NobbleMenuTree EntryS "r0, r1"
; Out V accumulated, r0 preserved if we're not causing error ; Out V accumulated, r0 preserved if we're not causing error
[ Fix003
NobbleMenuSelection EntryS "r0, r2" NobbleMenuSelection EntryS "r0, r2"
|
NobbleMenuSelection EntryS "r0"
]
LDRB r14, menu_causedselection LDRB r14, menu_causedselection
TEQ r14, #0 TEQ r14, #0
MOVNE r14, #0 MOVNE r14, #0
STRNEB r14, menu_causedselection STRNEB r14, menu_causedselection
[ Fix003
MOVNE r2, #Nowt ; find it anywhere MOVNE r2, #Nowt ; find it anywhere
]
BLNE ClearAllSelections ; ie. this one BLNE ClearAllSelections ; ie. this one
EXITS VC ; Accumulate V EXITS VC ; Accumulate V
......
...@@ -889,8 +889,9 @@ obeymess1 DCB "O" ...@@ -889,8 +889,9 @@ obeymess1 DCB "O"
ADDEQ r0, r0, #1 ADDEQ r0, r0, #1
STREQB r0, [r14, #d_nchildren] STREQB r0, [r14, #d_nchildren]
LDREQ r14, dvoffsetx LDREQ r14, dvoffsetx
MULEQ r14, r0, r14 ; MULEQ r14, r0, r14
ADDEQ r3, r3, r14 ; ADDEQ r3, r3, r14
MLAEQ r3, r0, r14, r3
LDREQ r14, dvoffsety LDREQ r14, dvoffsety
ADDEQ r4, r4, r14 ADDEQ r4, r4, r14
......
...@@ -12,6 +12,7 @@ ...@@ -12,6 +12,7 @@
; See the License for the specific language governing permissions and ; See the License for the specific language governing permissions and
; limitations under the License. ; limitations under the License.
; ;
; !Help support ; !Help support
GBLL interactive_help GBLL interactive_help
interactive_help SETL {TRUE} interactive_help SETL {TRUE}
...@@ -56,18 +57,6 @@ bug1596 SETL {TRUE} ...@@ -56,18 +57,6 @@ bug1596 SETL {TRUE}
GBLL dragtobar GBLL dragtobar
dragtobar SETL {TRUE} dragtobar SETL {TRUE}
; Using Ursula wimp?
GBLL ursulawimp
ursulawimp SETL {TRUE}
; Autoscrolling windows?
GBLL autoscroll
autoscroll SETL ursulawimp
; Ursula DragASprite
GBLL ursuladragasprite
ursuladragasprite SETL {TRUE}
; Default directory window width of four columns? ; Default directory window width of four columns?
GBLL fourcolumnwidth GBLL fourcolumnwidth
fourcolumnwidth SETL {TRUE} fourcolumnwidth SETL {TRUE}
...@@ -76,24 +65,12 @@ fourcolumnwidth SETL {TRUE} ...@@ -76,24 +65,12 @@ fourcolumnwidth SETL {TRUE}
GBLL NewMessageFilerSelection GBLL NewMessageFilerSelection
NewMessageFilerSelection SETL {TRUE} NewMessageFilerSelection SETL {TRUE}
[ ursulawimp
! 0, ""
! 0, "WARNING - this version only suitable for use with Ursula WIMP or later"
! 0, ""
|
! 0, ""
! 0, "WARNING - Why aren't you using the ursula WIMP?"
! 0, ""
]
; Shift-EXTend-close on a directory viewer leaves child open, and ; Shift-EXTend-close on a directory viewer leaves child open, and
; opens parent ; opens parent
GBLL shfextclose GBLL shfextclose
shfextclose SETL {TRUE} shfextclose SETL {TRUE}
; Allow set type on files
GBLL settype GBLL settype
settype SETL {TRUE} settype SETL {TRUE}
...@@ -117,10 +94,57 @@ SetDirectoryComesFirst SETL {TRUE} ...@@ -117,10 +94,57 @@ SetDirectoryComesFirst SETL {TRUE}
GBLL not_16bit_offsets GBLL not_16bit_offsets
not_16bit_offsets SETL {TRUE} not_16bit_offsets SETL {TRUE}
GBLL retainsel GBLL includeresources
retainsel SETL {TRUE} [ :DEF: standalone
includeresources SETL standalone
|
includeresources SETL {FALSE}
]
; Support for TinyDirs
GBLL hastiny
hastiny SETL {FALSE}
; This is NOT implemented properly and is just a quick hack for GBartram
GBLL fonthack
fonthack SETL {FALSE}
; +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
; Ursula flags
; Using Ursula wimp?
GBLL ursulawimp
ursulawimp SETL {TRUE}
; Autoscrolling windows?
GBLL autoscroll
autoscroll SETL ursulawimp
; MenuClearsSelection
; If set, then if a click with Menu on a file in a different viewer will remove
; the selection in any other viewer and select the new file.
GBLL MenuClearsSelection
MenuClearsSelection SETL {TRUE}
; OptionsAreInRAM
; If set, use RAM instead of CMOS to store options
GBLL OptionsAreInRAM
OptionsAreInRAM SETL {TRUE}
; AltRenaming - do Alt + Click renaming of files
; Don't trust this - some AltRenaming stuff isn't conditional on it.
GBLL AltRenaming
AltRenaming SETL {TRUE}
; Ursula DragASprite
GBLL ursuladragasprite
ursuladragasprite SETL {TRUE}
; +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
; Retain or clear selections after file actions
GBLL retainsel
retainsel SETL {TRUE}
GBLL clearsel_copymove GBLL clearsel_copymove
GBLL clearsel_file_access GBLL clearsel_file_access
...@@ -146,60 +170,21 @@ clearsel_file_stamp SETL (:LNOT: retainsel) :LOR: {FALSE} ...@@ -146,60 +170,21 @@ clearsel_file_stamp SETL (:LNOT: retainsel) :LOR: {FALSE}
clearsel_file_settype SETL (:LNOT: retainsel) :LOR: {FALSE} clearsel_file_settype SETL (:LNOT: retainsel) :LOR: {FALSE}
clearsel_newdir SETL (:LNOT: retainsel) :LOR: {FALSE} clearsel_newdir SETL (:LNOT: retainsel) :LOR: {FALSE}
; Ensure ClearAllSelections called with correct r2
GBLL Fix003
Fix003 SETL {TRUE}
GBLL includeresources
[ :DEF: standalone
includeresources SETL standalone
|
includeresources SETL {FALSE}
]
[ includeresources
! 0,"******* WARNING ******* FILER INCLUDES OWN RESOURCES, PLEASE TURN OFF."
]
; +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
GBLL hastiny
hastiny SETL False
; +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
; Other implementation flags
GBLL fonthack ; This is NOT implemented properly
fonthack SETL False ; and is just a quick hack for GBartram
; +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ; +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
; Ursula flags ; Emit and incompatibility warnings
; MenuClearsSelection [ ursulawimp
; If set, then if a click with Menu on a file in a different viewer will remove ! 0, ""
; the selection in any other viewer and select the new file. ! 0, "WARNING - This version only suitable for use with Ursula WIMP or later"
|
GBLL MenuClearsSelection ! 0, ""
MenuClearsSelection SETL True ! 0, "WARNING - Why aren't you using the Ursula WIMP?"
]
; OptionsAreInRAM
; If set, use RAM instead of CMOS to store options [ includeresources
! 0, ""
GBLL OptionsAreInRAM ! 0, "WARNING - Filer includes own resources, please turn off."
OptionsAreInRAM SETL True ]
! 0, ""
; AltRenaming - do Alt + Click renaming of files
; Don't trust this - some AltRenaming stuff isn't conditional on it.
GBLL AltRenaming
AltRenaming SETL True
END END
...@@ -84,8 +84,9 @@ create_rename_writeable Entry ...@@ -84,8 +84,9 @@ create_rename_writeable Entry
MOV r1, r0, LSL r2 MOV r1, r0, LSL r2
MOV r0, #4 MOV r0, #4
MUL r7, r0, r1 ; Adjust the size of the writeable icon according ; MUL r7, r0, r1 ; Adjust the size of the writeable icon according
ADD r4, r4, r7 ; to the y eigenvalue ; ADD r4, r4, r7 ; to the y eigenvalue
MLA r4, r0, r1, r4
Pull "r0-r3" ; Restore r0 - r3 Pull "r0-r3" ; Restore r0 - r3
LDR r6, relmousex ; load mouse x relative to window origin in r6 LDR r6, relmousex ; load mouse x relative to window origin in r6
...@@ -2089,9 +2090,8 @@ truncate_filename Entry "r0-r5" ...@@ -2089,9 +2090,8 @@ truncate_filename Entry "r0-r5"
24 24
LDRB r14, [r1], #1 LDRB r14, [r1], #1
STRB r14, [r0], #1 STRB r14, [r0], #1
SUB r2, r2, #1 SUBS r2, r2, #1
CMP r2, #0 BNE %BT24
BGT %BT24
; If necessary, add ellipsis character ; If necessary, add ellipsis character
CMP r11, r10 CMP r11, r10
......
...@@ -77,7 +77,7 @@ transfer_number Entry "r1,r2,r3,r4", 16 ...@@ -77,7 +77,7 @@ transfer_number Entry "r1,r2,r3,r4", 16
[ version >= 155 [ version >= 155
CMP r0, #0 ; negative number? CMP r0, #0 ; negative number?
MOVLT r4, #"""" ; then put a quote in MOVLT r4, #quote ; then put a quote in
STRLTB r4, [r1], #1 ; moving r1 along STRLTB r4, [r1], #1 ; moving r1 along
] ]
...@@ -289,8 +289,7 @@ sortviewers_bystacking Entry "r1-r4", u_windowstate ...@@ -289,8 +289,7 @@ sortviewers_bystacking Entry "r1-r4", u_windowstate
30 CMP r2, #Nowt 30 CMP r2, #Nowt
BEQ %FT60 BEQ %FT60
LDR r1, [r2, #d_sortlink] LDR r1, [r2, #d_sortlink]
BIC r1, r1, #2 BICS r1, r1, #2
TEQ r1, #0
BEQ %FT40 BEQ %FT40
LDR r2, [r2, #d_link] LDR r2, [r2, #d_link]
B %BT30 B %BT30
......
...@@ -51,13 +51,6 @@ cx0 RN r2 ...@@ -51,13 +51,6 @@ cx0 RN r2
MOVGT $a, $b MOVGT $a, $b
MEND MEND
MACRO
$label FixDCB $n, $string
ASSERT ((:LEN:"$string")<$n)
$label DCB "$string", 13
% ($n-1-(:LEN:"$string"))
MEND
MACRO MACRO
$lab InvSmiWidth $dirv $lab InvSmiWidth $dirv
$lab Push "R0" $lab Push "R0"
...@@ -246,12 +239,13 @@ df_exec # 4 ...@@ -246,12 +239,13 @@ df_exec # 4
df_length # 4 df_length # 4
df_attr # 4 df_attr # 4
df_helptype # 4 df_helptype # 4
df_fileptr # 4
[ not_16bit_offsets [ not_16bit_offsets
df_fileptr # 4
df_type # 1 df_type # 1
df_state # 1 df_state # 1
df_spare # 2 df_spare # 2
| |
df_fileptr # 4 ; Offset from dirname to filename is [df_fileptr] >> 16
df_type * df_fileptr ; LSB thereof (use LDRB/STRB) df_type * df_fileptr ; LSB thereof (use LDRB/STRB)
df_state * df_fileptr + 1 df_state * df_fileptr + 1
] ]
...@@ -273,7 +267,6 @@ dfs_opened * 2_00000010 ; Added by Chris Murray ...@@ -273,7 +267,6 @@ dfs_opened * 2_00000010 ; Added by Chris Murray
] ]
dfs_wasselected * 2_00000100 dfs_wasselected * 2_00000100
; Offset from dirname to filename is [df_fileptr] >> 16
; +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ; +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
; Filer global workspace allocation ; Filer global workspace allocation
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment