Commit 521331ae authored by Jeffrey Lee's avatar Jeffrey Lee
Browse files

Fix pinboard save code returning corrupt error pointers

Detail:
  s/Save - After the 'dot check' or DoSave resulted in an error being generated, IntSave_KeyPressed was pulling R0 from the stack instead of returning the error block pointer. This typically results in ofla errors on an Iyonix or alignment faults on a beagleboard.
Admin:
  Tested on BB-xM rev A3. Errors due to no dot in the filename, or DoSave failing, are now reported correctly.


Version 0.89. Tagged as 'Pinboard-0_89'
parent ccc7c3b4
......@@ -11,13 +11,13 @@
GBLS Module_HelpVersion
GBLS Module_ComponentName
GBLS Module_ComponentPath
Module_MajorVersion SETS "0.88"
Module_Version SETA 88
Module_MajorVersion SETS "0.89"
Module_Version SETA 89
Module_MinorVersion SETS ""
Module_Date SETS "04 Oct 2008"
Module_ApplicationDate SETS "04-Oct-08"
Module_Date SETS "14 Nov 2010"
Module_ApplicationDate SETS "14-Nov-10"
Module_ComponentName SETS "Pinboard"
Module_ComponentPath SETS "castle/RiscOS/Sources/Desktop/Pinboard"
Module_FullVersion SETS "0.88"
Module_HelpVersion SETS "0.88 (04 Oct 2008)"
Module_FullVersion SETS "0.89"
Module_HelpVersion SETS "0.89 (14 Nov 2010)"
END
/* (0.88)
/* (0.89)
*
* This file is automatically maintained by srccommit, do not edit manually.
* Last processed by srccommit version: 1.1.
*
*/
#define Module_MajorVersion_CMHG 0.88
#define Module_MajorVersion_CMHG 0.89
#define Module_MinorVersion_CMHG
#define Module_Date_CMHG 04 Oct 2008
#define Module_Date_CMHG 14 Nov 2010
#define Module_MajorVersion "0.88"
#define Module_Version 88
#define Module_MajorVersion "0.89"
#define Module_Version 89
#define Module_MinorVersion ""
#define Module_Date "04 Oct 2008"
#define Module_Date "14 Nov 2010"
#define Module_ApplicationDate "04-Oct-08"
#define Module_ApplicationDate "14-Nov-10"
#define Module_ComponentName "Pinboard"
#define Module_ComponentPath "castle/RiscOS/Sources/Desktop/Pinboard"
#define Module_FullVersion "0.88"
#define Module_HelpVersion "0.88 (04 Oct 2008)"
#define Module_LibraryVersionInfo "0:88"
#define Module_FullVersion "0.89"
#define Module_HelpVersion "0.89 (14 Nov 2010)"
#define Module_LibraryVersionInfo "0:89"
......@@ -42,20 +42,17 @@ IntSave_KeyPressed
CMP r14,#32
BGE %BT01
ADD sp,sp,#4
ADR r0,ErrorBlock_PinboardNoDot
BL msgtrans_errorlookup
Pull "r0,PC"
Pull "PC"
02
Debug sa,"Dot is at ",r14
;MOV r0,#&8F
LDR r1,save_filename_address
;DebugS sa,"Filename is ",r1
;SWI XOS_Find
;Pull "PC",VS
BL DoSave
Pull "r0,PC",VS
Pull "lr,PC",VS
Pull "r0"
TEQ r0, #1 ; was it an adjust click?
......@@ -297,6 +294,7 @@ DesktopSave
; Save a Pinboard Obey file
;
; In: r1 -> filename
; Out: r0 corrupt
DoSave ROUT
Entry "r1-r9"
......
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