1. 23 Apr, 2016 1 commit
    • ROOL's avatar
      Avoid referencing free'd memory · 5cfd49c3
      ROOL authored
      Detail:
        The Unlink macro also released the memory back to the RMA, but in 2 cases passed the old pointer around in a service call. Change Unlink to only remove from the linked list, and add a Free macro to do the release after the service call.
      Admin:
        Spotted by Colin Granville.
      
      Version 0.73. Tagged as 'DeviceFS-0_73'
      5cfd49c3
  2. 06 Jun, 2015 1 commit
    • Robert Sprowson's avatar
      Fix for handling of device driver buffer creation call · 54e89e2f
      Robert Sprowson authored
      PRM 2-612 says the device driver can modify R3-R6 during buffer creation in order to change the buffer creation parameters used with BufferManager.
      However, the subsequent logic in DeviceFS meant that if the buffer already existed the flags (R3) never got used.
      In practice this only affects the magic buffer numbers 0-9 retained for BBC Micro compatibility (Keyboard/Serial in/Serial out/Printer/Sound 0-3/Speech/Mouse), and of those only Serial & Parallel are in DeviceFS, and of those Parallel had a workaround, so really only the SerialDeviceDriver gains a fix here.
      
      Tested in an IOMD ROM.
      
      Version 0.72. Tagged as 'DeviceFS-0_72'
      54e89e2f
  3. 15 Jun, 2013 1 commit
  4. 25 May, 2013 1 commit
  5. 18 May, 2013 1 commit
  6. 06 Nov, 2009 1 commit
    • Jeffrey Lee's avatar
      Make DeviceFS NoUnaligned-safe · 63803838
      Jeffrey Lee authored
      Detail:
        deregisterdev and CallDevice now take care not to load from an unaligned address if the NoUnaligned option is turned on.
      Admin:
        Tested on rev C2 beagleboard
      
      
      Version 0.68. Tagged as 'DeviceFS-0_68'
      63803838
  7. 11 Jun, 2009 1 commit
    • Ben Avison's avatar
      GET file pathnames changed · 09e89ad5
      Ben Avison authored
      Detail:
        Uses suffixed file extensions for compatiblity with both objasm and asasm.
      Admin:
        Supplied by Peter Naulls, tested at ROOL
      
      Version 0.67. Not tagged
      09e89ad5
  8. 12 Aug, 2004 1 commit
  9. 20 Jun, 2004 1 commit
  10. 14 May, 2003 1 commit
  11. 03 Mar, 2003 1 commit
  12. 14 Jan, 2003 1 commit
  13. 26 Nov, 2002 1 commit
    • Dan Ellis's avatar
      Single instruction bugfix. · 6073da33
      Dan Ellis authored
      Where there is more than one stream open on a device the process
      of doing a directory listing corrupts the attribute flags due to a
      MOVS r3, r4 where the routine later needed to use r3.
      
      Version 0.62. Tagged as 'DeviceFS-0_62'
      6073da33
  14. 21 Feb, 2002 1 commit
    • Malcolm Boura's avatar
      DeviceFS wouldn't build · 8eb9b69d
      Malcolm Boura authored
      Detail:
        Debug switch missing
      Admin:
        It does now build, but no other testing carried out.
      
      Version 0.61. Tagged as 'DeviceFS-0_61'
      8eb9b69d
  15. 06 Dec, 2001 1 commit
  16. 24 Sep, 2001 1 commit
    • Dan Ellis's avatar
      - Fixed resetting of timeout · 2e9ed6c0
      Dan Ellis authored
        - Fixed sleep and timeout ioctls
        - Fixed initialisation from special field
      
      Detail:
        OS_RemoveTicker was being called with the wrong handle so not being
      removed.  This was causing timeout behaviour to work incorrectly.
      
        Sleep and Timeout ioctls weren't reading their reason fields from the ioctl
      block.  They now do, and work!
      
        Defaults weren't being set correctly from the special field.
      
      Admin:
        Tested on a RiscPC, and STB.
      
        Timeouts cause an error and so because of the fileswitch interface will not
      actually return bytes read during that request.  To perform a managed timeout
      in which bytes can be counted during timeout, non-blocking calls must be
      made.  However, bytes have still been copied to the destination buffer
      (although the caller won't know how many).
      
        There are still 'issues' with special fields.  However, they appear to work
      correctly on the Dual Serial interface.
      
      
      
      Version 0.59. Tagged as 'DeviceFS-0_59'
      2e9ed6c0
  17. 03 Sep, 2001 1 commit
    • Dan Ellis's avatar
      Added new IOCTL reason codes and special field flags for sleeping devicefs. · 3a86b4f5
      Dan Ellis authored
      Detail:
        DeviceFS has been enhanced with the ability to cooperate with Taskwindows
      so as to allow multitasking to continue.  Any devicefs stream, if opened
      with the special field entry 'sleep' will issue OS_UpCall 6 when it would
      normally block.  A flag 'timeout' has also been added which will cause the
      stream to issue a timeout error if it has slept for too long.
      
        These actions can be set using the generic IOCTLs 4 and 5, the former just
      being a logical switch, the latter being the value in centiseconds for which
      to sleep.
      
        There is also now a generic special field to specify non-blocking which may
      be used as an alternative to the IOCTL.
      
      Admin:
        Tested on a RiscPC.
      
      
      Version 0.58. Tagged as 'DeviceFS-0_58'
      3a86b4f5
  18. 16 Mar, 2001 1 commit
  19. 23 Feb, 2001 1 commit
  20. 11 Dec, 2000 1 commit
    • Dan Ellis's avatar
      Fixed lr corruption in UpCall handler · aa45b51a
      Dan Ellis authored
      Detail:
        lr was being used as a temporary register to store the buffer handle in
      whilst checking for ownership.  If DeviceFS didn't own the buffer the call
      was being made on, it then used this value in a MOV pc, lr thus going who
      knows where...
      
      Admin:
        Checked and still works.  Appears to cure previous problem where issuing
      Upcall 8 could cause a branch through zero error.
      
      Version 0.55. Tagged as 'DeviceFS-0_55'
      aa45b51a
  21. 07 Dec, 2000 1 commit
  22. 05 Dec, 2000 1 commit
  23. 04 Dec, 2000 1 commit
    • Paul Skirrow's avatar
      Bug fix: DeviceFS was inadvertently enabling interrupts when generating the... · 03ae9cfb
      Paul Skirrow authored
      Bug fix: DeviceFS was inadvertently enabling interrupts when generating the Upcall to indicate that new data has arrived in an input buffer.
      
      Detail:
        DeviceFS was using OS_UpCall to generate a UpCall_DeviceRxDataPresent
        upcall for for the wake up event (when data was inserted into a dormant
        receive buffer).
      
        However, OS_UpCall enables interrupts, contrary to the RISC OS 3 PRM.
        Since it happened within the hardware modem interrupt handler, this is
        quite dangerous and can lead to the modem interrupt handler being
        re-entered, thereby corrupting bytes or putting bytes into the buffer in
        the wrong order.
      
      Admin:
        SCTransport v0.57 or later is needed if using this version of DeviceFS
        (since earlier versions relied on this incorrect behaviour in DeviceVS).
      
        Unfortunately, Pace fault 2098 still exists after making this change
        (Chip to Server transactions are very slow in Customer F 8 using a HW modem).
      
      Version 0.52. Tagged as 'DeviceFS-0_52'
      03ae9cfb
  24. 29 Nov, 2000 1 commit
    • Stewart Brodie's avatar
      Another 32-bit fix. · 3a09e401
      Stewart Brodie authored
      Detail:
        The UpCall handler was using MOVEQS pc, lr to pass on the vector in
          some cases.
        Fixed a non-internationalised build bug - missing condition in macro.
      Admin:
        Built.
      
      Version 0.51. Tagged as 'DeviceFS-0_51'
      3a09e401
  25. 17 Oct, 2000 1 commit
    • Neil Bingham's avatar
      Removed -throwback from ASFLAGS · ac70132b
      Neil Bingham authored
        Added stripdepnd to MkClean
      Detail:
        Replaceed -throwback with ${THROWBACK} so that throwback isn't generated
        in ROM builds, but still works for local test builds.
      Admin:
        Tested on Ursula build.
      
      Version 0.50. Tagged as 'DeviceFS-0_50'
      ac70132b
  26. 17 May, 2000 1 commit
  27. 24 Mar, 2000 1 commit
  28. 10 Dec, 1999 1 commit
    • Stewart Brodie's avatar
      32-bit compatibility added. · c453026f
      Stewart Brodie authored
      Detail:
        Also fixed faulty debug code which tried to report the escape state,
          but would have always failed to do.
      Admin:
        Tested Phoebe and 32 machine builds.  Tested on Risc PC.
      
      Version 0.47. Tagged as 'DeviceFS-0_47'
      c453026f
  29. 05 Aug, 1999 1 commit
  30. 14 Jan, 1999 1 commit
  31. 19 Oct, 1998 1 commit
  32. 29 Sep, 1998 1 commit
  33. 21 Sep, 1998 3 commits