log in | register | forums
Show:
Go:
Forums
Username:

Password:

User accounts
Register new account
Forgot password
Forum stats
List of members
Search the forums

Advanced search
Recent discussions
- Elsear brings super-fast Networking to Risc PC/A7000/A7000+ (News:)
- Latest hardware upgrade from RISCOSbits (News:)
- RISCOSbits releases a new laptop solution (News:4)
- Announcing the TIB 2024 Advent Calendar (News:2)
- RISC OS London Show Report 2024 (News:1)
- Code GCC produces that makes you cry #12684 (Prog:39)
- Rougol November 2024 meeting on monday (News:)
- Drag'n'Drop 14i1 edition reviewed (News:)
- WROCC November 2024 talk o...ay - Andrew Rawnsley (ROD) (News:2)
- October 2024 News Summary (News:3)
Latest postings RSS Feeds
RSS 2.0 | 1.0 | 0.9
Atom 0.3
Misc RDF | CDF
 
View on Mastodon
@www.iconbar.com@rss-parrot.net
Site Search
 
Article archives
Acorn Arcade forums: Programming: Filters
 
  Filters
  ksattic (21:29 15/9/2003)
  Phlamethrower (21:51 15/9/2003)
    ksattic (23:44 15/9/2003)
      Loris (09:14 16/9/2003)
        ksattic (17:15 16/9/2003)
          john (21:30 16/9/2003)
            ksattic (06:12 17/9/2003)
              john (10:08 17/9/2003)
              mavhc (17:58 17/9/2003)
                ksattic (18:30 17/9/2003)
      mavhc (11:19 16/9/2003)
        ksattic (17:13 16/9/2003)
 
Simon Wilson Message #46475, posted by ksattic at 21:29, 15/9/2003
ksattic
Finally, an avatar!

Posts: 1291
Assuming I can intercept all window open, close and redraw requests for other applications, will this catch menus as well? Writing a small program that (sadly) crashes the machine when it intercepts one of these, I can still open menus. Hmm. I need to intercept anything that can cover the PCITV window.

Second is the crashing problem. I am fairly sure I am corrupting something (registers?) when I enter my filter function and return from it. I don't think I am corrupting the stack as AFAIK the SP is changed when I enter my function and the return address (old SP) is placed on the stack for when my function returns. Do I need something like CMunge (sadly no longer available) to make a suitable filter handler function for use with Filter_RegisterPostFilter?
  ^[ Log in to reply ]
 
Jeffrey Lee Message #46477, posted by Phlamethrower at 21:51, 15/9/2003, in reply to message #46475
PhlamethrowerHot Hot Hot Hot Hot Hot Hot Hot Hot Hot Hot Hot Hot stuff

Posts: 15100
No idea about filters, but if you were to intercept VDU calls then you should be able to track which bits of the screen are getting drawn. It may be as simple as watching for calls to change the graphics window, and as soon as they occur tell the TV card to stop drawing over that area. However I have a suspicious feeling that intercepting the required VDU calls is impossible; WrchV might work, but I've got no idea.
  ^[ Log in to reply ]
 
Simon Wilson Message #46479, posted by ksattic at 23:44, 15/9/2003, in reply to message #46477
ksattic
Finally, an avatar!

Posts: 1291
Hmm... cheers for the tip. I think what I'll do is make the window always-on-top (foreground) and wait till enough people complain that they can't cover the window. That will catch most things in the desktop, except other always-on-top windows.
  ^[ Log in to reply ]
 
Tony Haines Message #46481, posted by Loris at 09:14, 16/9/2003, in reply to message #46479
madbanHa ha, me mine, mwahahahaha
Posts: 1025
...I think what I'll do is make the window always-on-top (foreground)...
To be honest I'm suprised you'd consider otherwise. What would be the point of having realtime data displayed and then covering some of it up?
Assuming you're talking about your TV tuner, that is.
  ^[ Log in to reply ]
 
Mark Scholes Message #46485, posted by mavhc at 11:19, 16/9/2003, in reply to message #46479
Member
Posts: 660
Hmm... cheers for the tip. I think what I'll do is make the window always-on-top (foreground) and wait till enough people complain that they can't cover the window. That will catch most things in the desktop, except other always-on-top windows.
Can one iconise it and still hear the sound, say?
  ^[ Log in to reply ]
 
Simon Wilson Message #46495, posted by ksattic at 17:13, 16/9/2003, in reply to message #46485
ksattic
Finally, an avatar!

Posts: 1291
Can one iconise it and still hear the sound, say?
Yep, if you close the window, you just have the iconbar icon and no sound (the channel is preserved). If you iconise it, you have no picture but you keep the sound. Useful when you're watching a film and don't want to miss something but you really need the whole screen for something quick.
  ^[ Log in to reply ]
 
Simon Wilson Message #46496, posted by ksattic at 17:15, 16/9/2003, in reply to message #46481
ksattic
Finally, an avatar!

Posts: 1291
To be honest I'm suprised you'd consider otherwise. What would be the point of having realtime data displayed and then covering some of it up?
Assuming you're talking about your TV tuner, that is.
Until yesterday I wasn't sure how to make windows always-on-top! I didn't realise that from Windowmanager 4.00, the window flag "furniture" had been changed to "foreground". WinEd won't let you set the option and still allow all the window tools, so I hacked the template file until I realise that FormEd does. ;)

Oh, and the main reason you'd want to obscure the TV card window is to open a menu on top of it, but RISC OS menus aren't always-on-top like Windows* menus, so the TV card's always-on-top state would have to be changed temporarily too.

[*not saying that I prefer Windows here!]

[Edited by ksattic at 18:17, 16/9/2003]
  ^[ Log in to reply ]
 
John D Message #46499, posted by john at 21:30, 16/9/2003, in reply to message #46496
Member
Posts: 261
I have a better idea? - to keep it working like a RO app make it a normal window, but only display the data if it's on top. This means it will work fine when it's on top, as you'd expect, but you can still do stuff as usual such as opening menus and doing other stuff. The only difference would be that it would go blank at that point, but reappear as soon as you finish with the menu/bring the window back to the front.
  ^[ Log in to reply ]
 
Simon Wilson Message #46506, posted by ksattic at 06:12, 17/9/2003, in reply to message #46499
ksattic
Finally, an avatar!

Posts: 1291
I have a better idea? - to keep it working like a RO app make it a normal window, but only display the data if it's on top.
This would be annoying if you are browsing the net and opening many windows, or doing stuff with Zap. Quite often I have other windows open that are on top of the window stack but not covering the TV window at all. I would have to keep clicking on the TV to bring it back to the top in order to show the picture again.

I've thought of doing this for menus but I can get away without any menus for the TV viewer. I had another idea: when you tune channels, the TV image will shrink to 33% size and the list of channels will be shown in a pane in the same window. That will be functional, and work well.

I'm about to upload an example of the video capture quality of the TV card to the website.
  ^[ Log in to reply ]
 
John D Message #46510, posted by john at 10:08, 17/9/2003, in reply to message #46506
Member
Posts: 261
How about have it as an option then? I can see people having trouble eith it either, so if you just make it an option ("always on top";) assuming that's easy to implement. Not that I've even got an iyonix, though!
  ^[ Log in to reply ]
 
Mark Scholes Message #46533, posted by mavhc at 17:58, 17/9/2003, in reply to message #46506
Member
Posts: 660
I had another idea: when you tune channels, the TV image will shrink to 33% size and the list of channels will be shown in a pane in the same window. That will be functional, and work well.
Why not just add the pane to the side of the window?
  ^[ Log in to reply ]
 
Simon Wilson Message #46536, posted by ksattic at 18:30, 17/9/2003, in reply to message #46533
ksattic
Finally, an avatar!

Posts: 1291
Why not just add the pane to the side of the window?
Good idea - I'll see how easy this is to implement taking into account that the viewer window may be too large to add a channel window on the size and have them both fit on screen.
  ^[ Log in to reply ]
 

Acorn Arcade forums: Programming: Filters