Ovation
GavinWraith (26) 1563 posts |
No problems with 1.51RM so far (RO 5.23 on Rpi2). Christmas has come early. Many thanks Rick. |
Doug Webb (190) 1180 posts |
Excellent work Rick and thanks for another fix to this old but valuable program and adds yet another one of the big applications that now runs on modern hardware. RISC OS really now has some excellent free applications that enhance the available platforms. |
Rick Murray (539) 13840 posts |
Quick tutorial at http://www.heyrick.co.uk/blog/index.php?diary=20151108 Using Ovation as a basic word processor; and then how to go into DTP with a two-sided two-column document with shadow effect title, sub title, some lines, inserted pictures, etc. Created on a Pi, “published” (to PDF) on a Pi, and readable on anything. No button. I don’t think it’ll be possible to top the secret in yesterday’s button. ;-) |
Raik (463) 2061 posts |
@Rick |
Matthew Harris (1462) 36 posts |
Rick, I’ve made a few updates to the templates and modified the toolbar icons: Hopefully, all the ‘odd’ backgrounds have been removed, plus I altered a few of the alignments. For the toolbar icons, these are now indirected double-sprites (a pushed and a normal one) plus I removed the border, simply adding a single pixel border in the left-hand side. Update files are included at: https://dl.dropboxusercontent.com/u/55816926/Ovn_MJH_Xtras.zip Hope that makes sense. Best regards, Matt H |
Rick Murray (539) 13840 posts |
Raik:
I first used Ovation on my A3000 in MODE 12 – 640×256 with ugly rectangular pixels. ;-) However, if you are using the standard PostScript printer driver to create PDFs, do not use Sprites! Use only JPEGs. This is because the standard driver is rubbish and will try to render a square for every pixel of the sprite. More details here: http://www.heyrick.co.uk/blog/index.php?diary=20151109 Matt: Thanks. A link tool that looks like a link. Whoo! Your modifications will be in the next release. Thanks again for these. |
Gwyn (355) 46 posts |
I would also like to express my appreciation of the work that Rick has put into updating Ovation. Thank You. Gwyn |
GavinWraith (26) 1563 posts |
I would be interested to know the format of Ovation document files. I am guessing, simply from the date when Ovation was first produced, that it uses chunks and has some similarity to Drawfile format. This information would be useful to have in the public domain should anybody want to add scriptability or the possibility of producing Ovation documents not by hand but from a program. |
Matthew Harris (1462) 36 posts |
From looking at the code, the first point does not seem correct – there is an array defining the various templates (windownames, around line 1337 of wos.c) and the final 3 are those for the spell check version. So, upshot would appear to be that the order of the templates in the file does not matter. For the odd horizontal scroll bar alignment with certain window furniture themes, this would appear to be linked to the fixed values of hscrlbar and vscrlbar in wos.c (around line 89). Currently, these are defined as being fixed to 40 OS units – in other words, 2 units less than the adjusted size of the window resize icon in the original RISC OS 3 window furniture tool sprites (these were 21×21 pixels in square-pixel modes – the majority of themes today have these as 20×20). So, dynamically setting the hscrlbar to: ((sicon height * mode Y eigen factor) – mode Y eigen factor) (set yscrlbar similarly) should, hopefully, do the trick. Does this make sense? Best regards, Matt H |
Rick Murray (539) 13840 posts |
Gavin:
It is complicated. A few arrays, a load of ints, some char tables, and then a big load of interlinked chunks of data defining everything. The load function (
To my knowledge, nobody has attempted it in a quarter century. If you want scriptable documents, Impression DDF or OvationPro DDF are the easy way. Trying to figure out Ovation? That’s the non-easy way. Matt:
Ah, I missed that. Phew. That makes more sense.
Is this correct? The height of sicon (hi-res) is 20 pixels. The Yeig is 1. I’ve plugged it in and run it. Very wrong. ;-) Did you mean If the value of 40 is one too big, that implies that 38 is the correct value. In lieu of fiddling around (I’m really tired!) finding and interrogating Wimp space icons and then checking that it works correctly moving to/from 2:4 modes and with different tool/themes (I assume I’ll need to hang on to the mode change notification), I have opted for the quick’n’dirty method and have thrown together a quick hack in BASIC to patch the scroll sizes to 38. REM >scrollpatch REM REM Patches Ovation v1.51RM to have better sized scrollbars. REM ( in lieu of doing it properly <g> ) REM file$ = "<Ovation$Dir>.!RunImageS" REM Is it there? How big is it? SYS "XOS_File", 17, file$ TO obj%,,,,len% IF (obj% <> 1) THEN ERROR 17, "Ovation program not found." REM Load it. DIM bigbuffer% len% SYS "XOS_File", 16, file$, bigbuffer%, 0 REM Sanity test IF (bigbuffer%!&5C4E0 <> 40) THEN ERROR 17, "Unexpected." IF (bigbuffer%!&5C4E4 <> 40) THEN ERROR 17, "Unexpected." REM Patch bigbuffer%!&5C4E0 = 38 bigbuffer%!&5C4E4 = 38 REM Backup original SYS "XOS_CLI", "Copy "+file$+" "+file$+"-backup ~C~DF~L~N~P~Q~S~V" REM Save it SYS "XOS_File", 10, file$, &FF8, 0, bigbuffer%, (bigbuffer% + len%) REM Done. END |
Matthew Harris (1462) 36 posts |
Yeah, I think that I rather messed that up – was a rather long day. But the quick patch you threw together does, indeed, make it look MUCH better. Thanks. |
Matthew Harris (1462) 36 posts |
The conversion should probably be: ( ( IconHeight << EigenY ) – ( 1 << EigenY ) For some reason, I’d got it in my head that the Eigen values for the hi-res square pixel modes was 2 – probably getting myself confused with the sprite naming… |
Rick Murray (539) 13840 posts |
When in UTF-8 mode, Ovation displays extended characters, although the cursor positioning is still stuck in the one-char-is-one-byte behaviour. Problem is, none of this can be “printed” to PDF, regardless of whether it shows as “ムームーン” or “ã ã¼ã ã¼ã³”, because the standard PS driver outputs utter rubbish. Are there any plans to fix the PS driver so it can at least attempt something that looks like valid PostScript for UTF-8 text? |
Matthew Harris (1462) 36 posts |
Rick, I did a bit more digging – we don’t need to go pratting around with looking at toolsprite icon sizes. Looking into the Netsurf code as, I figured, they need to do something similar for their status bar, I found that they were using a function in OS_Lib that utlimately calls SWI Wimp_Extend 11 A quick BASIC program showing usage:
On my machine, this returns 38 for both. Hope this helps. Best regards, Matt H |
Rick Murray (539) 13840 posts |
Brilliant stuff! I was pretty sure I’d seen a call to get the furniture sizes, but a rummage around Wimp_ReadSysInfo didn’t show anything useful. |
Matthew Harris (1462) 36 posts |
One caveat – Wimp_Extend 11 is only available from RISC OS 4 onwards. Running my sample on 3.71 gives 0 (at least it doesn’t crash). So, I think that a suitable implementation would use the defafults of 40 if zero is returned from Wimp_Extend 11 |
Rick Murray (539) 13840 posts |
The obvious question is why is the Wimp clearing a block that it doesn’t know about? Here’s a different story:
;-) We can, though, use this to our favour. Set blk%!72 / blk%!76 prior to calling, and it should return correctly even if call is not supported. |
Rick Murray (539) 13840 posts |
No release – too tired to build an archive, move it to the PC, upload it… I know I’ll screw something up, so tomorrow maybe? Okay – what to look forward to is…
[…not that there’s any point attempting to print this sort of stuff, unless you either do it to a bitmap image printer (dot matrix, inkjet, laser) or have MW’s sane PS3 driver…] |
Rick Murray (539) 13840 posts |
It’s here!!! A Friday-the-thirteenth special for you: 2015/11/12 v1.52RM * Changed scroll bar sizes to better fit into new style of icon design. It is hardwired to "38" (OS units) on older machines, and reads the information from the Wimp on RISC OS 4 or later. * Added some nice new high-res sprites and Style Guide friendly templates, with many MANY thanks to Matthew Harris for these. * The sprite loader now looks at the size of the sprite file and allocates that much, instead of being hardwired to some arbitrary value. * There is a hack to run Ovation in UTF-8 mode. Simply start the application whilst holding down the Right Alt key. This is a simple hack (specifies UTF-8 font encodings) which has "problems" at the moment, namely: -> Input of accented (and other high bit set) characters is not possible except when machine is itself in UTF-8 mode. -> UTF-8 state is not stored in any files. Either Ovation starts that way or it doesn't. [you can run multiple copies, in one of each way] This is just a test. It may be extended to resolve some of the above issues, or it may be forgotten about. You can tell which mode a copy of Ovation is running in by looking in the Info window. In UTF-8 mode, you will see "[UTF-8]" suffixed to the version. 2015/11/13 v1.52RM *released* * Cursor movement now works correctly in UTF-8 mode. ;-) * Ovation can now link to DADebug if it is running on the system; simply use debug() as a clone of printf() [max. 256 characters after any expansion]; and then *DADPrint in a taskwindow to view the output. |
David Feugey (2125) 2709 posts |
Free, easy to use and modern. Cool :) If APDL.org.uk provides us a free and non buggy (there are problems of calculation precision on modern computers) version of Schema, we’ll have a complete office suite. I dug inside old magazines yesterday. RISC OS is not Windows 10, but really better than ever. |
Steve Pampling (1551) 8170 posts |
Now there’s a nice thought. Even nicer thought: It isn’t Windows 8 either. Probably the nicest thing about Windows 10 is that it too is not Windows 8. |
Steffen Huber (91) 1953 posts |
Of course you could just use Fireworkz (version 2 released a few days ago), but that is probably too simple :-) On the other hand, nowadays Office suites include email and presentation software. So still some gaps to close. |
Krzysztof Staniorowski (2787) 35 posts |
Actually it’s the worst thing (8.1u1 was so good that I couldn’t believe that MS did it). |
David Feugey (2125) 2709 posts |
Very different from Schema. |
Steve Fryatt (216) 2105 posts |
I’ve just been having a play with Ovation 1.52 (thanks, Rick!), and seem to have hit a problem… Unfortunately, having never used the application before, I’m not sure if it’s a bug or just my expecting things to behave like Ovation Pro. Trying to create a new Paragraph Style, I went to the Para. style menu and selected Edit style… to open the Define paragraph style dialogue. I then clicked on New and gave the style a name, which made it appear in the scrolling list on the left; I could then edit the style via the menu, before clicking OK to save it. However, when I go back to the Para. style menu, there’s nothing below the dotted line: the style doesn’t appear to show up. I know it’s saved, because if I select Edit style… again, it’s there in the Define paragraph style dialogue. When the new style’s name is highlighted in the dialogue box list, Show on menu is ticked. Having found the Ovation manual on the Risc World website, I appear to be doing everything correctly. So, before I waste time investigating further, have I misunderstood something or is there a problem with 1.52RM that means that styles don’t show up on the menu? ETA: This is on RISC OS 5.23, on a Beagleboard. |