1. 06 May, 2017 1 commit
    • ROOL's avatar
      Fixes for pinboard backdrop sprite changing · f462c775
      ROOL authored
      Detail:
        Fix out-by-1 error in MakeCompactModeWord, the palette checksum read from array index -1 due to the loop construction.
        Consider the x/y size as well as the compact mode word when deciding whether to recache the backdrop sprite.
        Don't assume the screen byte size is equivalent to working out the sprite byte size, due to word rounding at the end of each line. Calculate it properly.
        Allow the Wimp_SlotSize to exactly equal the required memory (previously, had to be larger).
      Admin:
        Submission from Timothy Baldwin, with minor refactoring.
      
      Version 1.03. Tagged as 'Pinboard-1_03'
      f462c775
  2. 11 Sep, 2012 1 commit
    • Robert Sprowson's avatar
      Fix for not recalculating pixel translation on backdrop tile going from G256... · 6f1ca57b
      Robert Sprowson authored
      Fix for not recalculating pixel translation on backdrop tile going from G256 to C256 (or G16 to C16) mode specifier
      
      The change in Pinboard-0_95 to get eigen factor rescaling right included a quick exit when neither the bpp nor eigen factors had changed.
      However, changing from a greyscale to colour 8bpp or 4bpp mode falls fouls of this (since bpp and eigen are the same), so the backdrop sprite was not recached.
      There was code to collect Message_PaletteChanged, however the Wimp hasn't sent this round since pre RISC OS 3.60, additionally the mode change code was manually disabling it (not required since Message_ModeChange was never accompanied by Message_PaletteChange according to PRM3-230). This has been switched out.
      Now, the 'have I already done this sprite' flag includes the bpp and eigen factors plus a 13 bit hash of the desktop palette.
      
      Version 0.96. Tagged as 'Pinboard-0_96'
      6f1ca57b
  3. 23 Aug, 2012 1 commit
    • Robert Sprowson's avatar
      Fix for patchy tiled backdrops on changing to non EX1/EY1 mode · 4379de0e
      Robert Sprowson authored
      Pinboard keeps a note of the mode (from OS_Byte 135) that the backdrop sprite tile was last cached in, to avoid having to recache it all the time. However, the comparison fails when the mode specifier block (ie. when OS_Byte 135 is not reporting a numeric screen mode) is static since although the mode might have changed Pinboard would not think it had and hence not recache the sprite.
      The result is a patchy desktop, for example changing from EX1/EY1 to EX0/EY0 would leave a quadrant arrangement of 1 redrawn patch and 3 not redrawn.
      Backdrop.s:
      Line 151 onwards, when a mode specifier is used, build a magic mode word combining EX EY and BPP (the 3 parameters the cache sprite function cares about), as a stronger check.
      Tail.s:
      Line 130 onwards, calculate the iconbar height properly (previously used 134 pixels for EY0 modes, 1 too high, leading to a thin strip of background colour above the iconbar.
      Other changes
       - Use sprite area offset names from Hdr:Sprites rather than magic numbers
       - Use OS_Byte reasons from Hdr:OsBytes
       - Use "file.s" style names in LNK commands
       - Move BadOptions/NotASprite error blocks to avoid range error when assembling debug versions
       - true and false for objasm {TRUE} and {FALSE}
      
      Version 0.95. Tagged as 'Pinboard-0_95'
      4379de0e
  4. 28 Sep, 2011 1 commit
    • Jeffrey Lee's avatar
      Fix caching of backdrop sprites · 77e35785
      Jeffrey Lee authored
      Detail:
        s/Backdrop - The tidying up in revision 4.8 caused a vital "MOV r0,#-1" to be lost, causing the wrong mode to be used when fetching the screen BPP. As a result, caching the sprite would fail if the sprite was in a lower BPP than the current screen mode, as the calculated sprite area size would have been too small. This fixes that.
      Admin:
        Tested on rev A2 BB-xM.
        Sprite backdrops now seem to work again.
      
      
      Version 0.94. Tagged as 'Pinboard-0_94'
      77e35785
  5. 24 Sep, 2011 3 commits
  6. 31 Jul, 2003 1 commit
    • Robert Sprowson's avatar
      A few assumptions about SWIs preserving flags remained: nuked. · 2668021c
      Robert Sprowson authored
      A few TEQ Rn,#0 changed to use 'S' and save an instruction.
      Fix for misscaled tiled backdrop sprite in EX/EY0 mode - an 'out by 1'
      error meant that some of the background colour shone through when the
      tile sprite got resized to be too short.In any other EX/EY mode you never
      noticed it due to rounding errors in the scaling.
      The "Iconise to..." options submenu is now shaded if the Wimp has the
      iconise buttons turned off: this minimises confusion for anyone who
      hasn't realised that shift-close and iconise are subtley different in that
      only the iconise button obeys the "Iconise to..." options,whereas
      shift-close iconises at the point of application.
      
      Version 0.81. Tagged as 'Pinboard-0_81'
      2668021c
  7. 11 Nov, 2002 1 commit
    • Robert Sprowson's avatar
      Commented out "proginfo" string,no longer used. · d830e6f3
      Robert Sprowson authored
      Prefixed the pin and addtinydir commands that get saved in the
      pinboard file with "X " so your pinboard setup continues even if a file
      is no longer available.ROL did this with a new XPin command,not taken.
      Merged changes from ROL to allow the icon text to be an arbitary colour
      though this can be switched out with "technicolour_text" for the
      purists.
      Help entry added to the pinboard selection submenu,this will be greyed
      out except when
       it's an app
       and it has a !help file
       and it is the only object selected
      like the filer does.
      Updated messages file accordingly.
      Menu clicking on the "save pinboard settings" OK button no longer saves
      the file,and adjust clicking keeps the menu tree open
       -> fixes bug report from 1998,now removed from "Status" file
      Saveas template resized to match !Edit.
      Fixed problem of select dragging a file to an app leaving the icon
      selected (due to two conditional MOV R0's being followed by an
      unconditional one for some reason).
       -> fixes bug report from 1998,now removed from "Status" file
      Tweaked a few CMP#0 BLT's to test specifically for the iconbar handle.
      The bug report in "Status" about bits of filenames being left on the
      pinboard can be bodged by popping an ADD r0,r0,#16 after the XWimp_TextOp
      in s.buffered but I've not done this yet.
      
      Version 0.78. Tagged as 'Pinboard-0_78'
      d830e6f3
  8. 16 Mar, 2001 1 commit
  9. 17 Aug, 1999 1 commit
    • Stewart Brodie's avatar
      Ursula branch merged. · fe208d90
      Stewart Brodie authored
      Added inclusion of Machine header for new CMOS header
      Moved to srccommit.
      Templates contain hardwired version/date information which is a long
        way out of date.  This has not been fixed in this checkin.
      
      Version 0.75. Tagged as 'Pinboard-0_75'
      fe208d90
  10. 05 Nov, 1996 1 commit