Re: [Ql-Users] Ranting: A Story of two Operating Systems
Dilwyn Jones wrote: Authors of QL software like me use JM and JS ROMs to test software for compatibility. Probably the only thing I use them for, though. Yeah, but that's something you didn't have to do if people would at least be willing to enter the 90s, QL wise ;) I had Minerva in all my QLs, and that was over 15 years ago... Marcel ___ QL-Users Mailing List http://www.q-v-d.demon.co.uk/smsqe.htm
Re: [Ql-Users] Ranting: A Story of two Operating Systems
It's easier said than done, though. You can't exactly whip the JS ROMs out of a QL and slap in SMSQ. So for those people who want to keep their QLs in service, or are just emotionally attached to them, they don't have the ability to enter the 90s in that way :) Hmmmn ... is it possible to make a ROM-able SMSQ? and make an adapter to fit it into a standard QL? From memory it would need at least a 256K ROM - add in a couple of meg of RAM at the same time on some kind of processor daughter board and ... Bob's your uncle! ... QL users literally rushing into the 1990s ... the 2000s ... the 2010s ... and beyond! Sounds like a job for Dave Park to me. :) Adrian -Original Message- From: ql-users-boun...@lists.q-v-d.com [mailto:ql-users-boun...@lists.q-v-d.com] On Behalf Of Marcel Kilgus Sent: 24 February 2011 17:02 To: ql-us...@q-v-d.com Subject: Re: [Ql-Users] Ranting: A Story of two Operating Systems Dilwyn Jones wrote: Authors of QL software like me use JM and JS ROMs to test software for compatibility. Probably the only thing I use them for, though. Yeah, but that's something you didn't have to do if people would at least be willing to enter the 90s, QL wise ;) I had Minerva in all my QLs, and that was over 15 years ago... Marcel ___ QL-Users Mailing List http://www.q-v-d.demon.co.uk/smsqe.htm ___ QL-Users Mailing List http://www.q-v-d.demon.co.uk/smsqe.htm
Re: [Ql-Users] Ranting: A Story of two Operating Systems
On Thu, Feb 24, 2011 at 12:54 PM, Marcel Kilgus ql-us...@mail.kilgus.netwrote: Adrian Ives wrote: It's easier said than done, though. You can't exactly whip the JS ROMs out of a QL and slap in SMSQ. SMSQ? I'm talking Minerva here... and you certainly can whip out a JS ROM and put Minerva in there ;) I've never owned a machine capable of running SMSQ/E before creating QPC (got an SGC system on loan to develop SMSQ/E for QPC before QPC was capable of doing it itself, but that wasn't mine). Minerva on the other hand was a must, especially for non-(S)GC QLs. Hmmmn ... is it possible to make a ROM-able SMSQ? Probably, but for SMSQ/E it's really more practical to leave the QDOS ROMs in and just use them as a bootloader. Cheers, Marcel I'm willing to take on the PCB design of anything helpful here if there's a schematic - I imagine a simple 68000 at the QL's original clock speed, with a few megs of RAM and SMSQ/E would be easy but not the best use of resources. Maybe having a very low cost Minerva upgrade, and working on getting another Q60-style machine out, while continuing to improve the emulators for the power users - since long term, emulation seems to be the most flexible route... However, when it comes to hardware, I have an SMD production capability and I'm willing to do anything I can afford. Dave ___ QL-Users Mailing List http://www.q-v-d.demon.co.uk/smsqe.htm
Re: [Ql-Users] Ranting: A Story of two Operating Systems
Sorry, I must have misunderstood. I thought from your original mail that you were saying that you had Minervae in your machines over 15 years ago. So, is this really a case of QL users rushing *back* in time to the 90s? ;) -Original Message- From: ql-users-boun...@lists.q-v-d.com [mailto:ql-users-boun...@lists.q-v-d.com] On Behalf Of Marcel Kilgus Sent: 24 February 2011 18:54 To: ql-us...@q-v-d.com Subject: Re: [Ql-Users] Ranting: A Story of two Operating Systems Adrian Ives wrote: It's easier said than done, though. You can't exactly whip the JS ROMs out of a QL and slap in SMSQ. SMSQ? I'm talking Minerva here... and you certainly can whip out a JS ROM and put Minerva in there ;) I've never owned a machine capable of running SMSQ/E before creating QPC (got an SGC system on loan to develop SMSQ/E for QPC before QPC was capable of doing it itself, but that wasn't mine). Minerva on the other hand was a must, especially for non-(S)GC QLs. Hmmmn ... is it possible to make a ROM-able SMSQ? Probably, but for SMSQ/E it's really more practical to leave the QDOS ROMs in and just use them as a bootloader. Cheers, Marcel ___ QL-Users Mailing List http://www.q-v-d.demon.co.uk/smsqe.htm ___ QL-Users Mailing List http://www.q-v-d.demon.co.uk/smsqe.htm
[Ql-Users] Ranting: A Story of two Operating Systems
So, in order to allow users to RESPR additional extensions after loading the Ser-USB driver, I changed the mechanism for the way in which it starts its Queue Manager task. It was quite elegant, really: setting a flag bit the first time that Queue Manager services were needed to be picked up later by the scheduler loop task which would start the manager. Under SMSQ? No problem. Sorted. Under QDOS? BLAM **^%%^$£$£ Now I have probably missed some important piece of documentation somewhere that says you're not allowed to do trap 1, mt.cjob in a scheduler loop task under QDOS, but you are allowed to in SMSQ. The QDOS documentation that I have doesn't say that you can't do this - but, fair enough, thinking about it I suppose the call would mess with the job table and might muck things up when a return is made to the scheduler. OK, that's that, it can't be done. I accept it. I'm moving on. But what I would really like is some kind of document that sets out a list of things that fall in the category: This should work under QDOS, it says it should, but it doesn't but we went ahead and fixed it in SMSQ This is not just for me, but for any other poor sod who has to try developing system level code to run under both platforms. This is not the first time that I've encountered things that should work under QDOS but don't, yet they work fine under SMSQ. It's fixed now. The QDOS underclass will have to manually issue a USB_START command after they've loaded any other extensions, while SMSQ users can be confident that the driver will automatically start queue management when needed. Further down my list is to start testing under Minerva. I'm dreading it. :( Adrian ___ QL-Users Mailing List http://www.q-v-d.demon.co.uk/smsqe.htm
Re: [Ql-Users] Ranting: A Story of two Operating Systems
On 23 Feb 2011, at 11:27, Adrian Ives wrote: Now I have probably missed some important piece of documentation somewhere that says you're not allowed to do trap 1, mt.cjob in a scheduler loop task under QDOS, but you are allowed to in SMSQ. The QDOS documentation that I have doesn't say that you can't do this - but, fair enough, thinking about it I suppose the call would mess with the job table and might muck things up when a return is made to the scheduler. OK, that's that, it can't be done. I accept it. I'm moving on. But what I would really like is some kind of document that sets out a list of things that fall in the category: This should work under QDOS, it says it should, but it doesn't … but we went ahead and fixed it in SMSQ I noticed recently that MOD and DIV work under SMSQ/E with larger numbers than integers but do not under QDOS. I have never seen any reference to this difference. This sort of thing could be added to the list of differences. George ___ QL-Users Mailing List http://www.q-v-d.demon.co.uk/smsqe.htm
Re: [Ql-Users] Ranting: A Story of two Operating Systems
On 23 Feb 2011, at 11:45, Rich Mellor wrote: The difference in MOD and DIV is mentioned in the SBASIC/SuperBASIC Reference Manual (plug) - And where exactly can you get hold of this Manual? (Attempting to unplug to let it flow). It seems a must. George ___ QL-Users Mailing List http://www.q-v-d.demon.co.uk/smsqe.htm
Re: [Ql-Users] Ranting: A Story of two Operating Systems
On 23/02/2011 11:52, gdgqler wrote: On 23 Feb 2011, at 11:45, Rich Mellor wrote: The difference in MOD and DIV is mentioned in the SBASIC/SuperBASIC Reference Manual (plug) - And where exactly can you get hold of this Manual? (Attempting to unplug to let it flow). It seems a must. George ___ QL-Users Mailing List http://www.q-v-d.demon.co.uk/smsqe.htm I had best put the plug in - I am on a water meter! http://www.sellmyretro.com/offer/details/SBASIC%25SuperBASIC_Reference_Manual_for_Sinclair_QL_on_CD-1397 -- Rich Mellor RWAP Services http://www.rwapsoftware.co.uk http://www.rwapservices.co.uk -- Try out our new site: http://sellmyretro.com ___ QL-Users Mailing List http://www.q-v-d.demon.co.uk/smsqe.htm
Re: [Ql-Users] Ranting: A Story of two Operating Systems
Oh dear you fell for Rich's QDOS trap 2, caugt mt.cm job look @ RWap Site loop Lee - Back to the QL- - Original Message - From: gdgqler To: ql-us...@q-v-d.com Sent: Wednesday, February 23, 2011 11:52 AM Subject: Re: [Ql-Users] Ranting: A Story of two Operating Systems On 23 Feb 2011, at 11:45, Rich Mellor wrote: The difference in MOD and DIV is mentioned in the SBASIC/SuperBASIC Reference Manual (plug) - And where exactly can you get hold of this Manual? (Attempting to unplug to let it flow). It seems a must. George ___ QL-Users Mailing List http://www.q-v-d.demon.co.uk/smsqe.htm ___ QL-Users Mailing List http://www.q-v-d.demon.co.uk/smsqe.htm
Re: [Ql-Users] Ranting: A Story of two Operating Systems
On 23/02/2011 11:45, Rich Mellor wrote: On 23/02/2011 11:36, gdgqler wrote: On 23 Feb 2011, at 11:27, Adrian Ives wrote: Now I have probably missed some important piece of documentation somewhere that says you're not allowed to do trap 1, mt.cjob in a scheduler loop task under QDOS, but you are allowed to in SMSQ. The QDOS documentation that I have doesn't say that you can't do this - but, fair enough, thinking about it I suppose the call would mess with the job table and might muck things up when a return is made to the scheduler. OK, that's that, it can't be done. I accept it. I'm moving on. But what I would really like is some kind of document that sets out a list of things that fall in the category: This should work under QDOS, it says it should, but it doesn't … but we went ahead and fixed it in SMSQ I noticed recently that MOD and DIV work under SMSQ/E with larger numbers than integers but do not under QDOS. I have never seen any reference to this difference. This sort of thing could be added to the list of differences. George ___ QL-Users Mailing List http://www.q-v-d.demon.co.uk/smsqe.htm The difference in MOD and DIV is mentioned in the SBASIC/SuperBASIC Reference Manual (plug) I've not found that manual anywhere. Malcolm ___ QL-Users Mailing List http://www.q-v-d.demon.co.uk/smsqe.htm
Re: [Ql-Users] Ranting: A Story of two Operating Systems
Adrian Ives wrote: But what I would really like is some kind of document that sets out a list of things that fall in the category: This should work under QDOS, it says it should, but it doesn't but we went ahead and fixed it in SMSQ Where does it say it should work under QDOS? I guess this wasn't consciously fixed in SMSQ/E, it's probably more a side effect of the new implementation. And documenting all possible side effects borders on the impossible, unfortunately. This is not just for me, but for any other poor sod who has to try developing system level code to run under both platforms. This is not the first time that I've encountered things that should work under QDOS but don't, yet they work fine under SMSQ. Supporting QDOS is a pain, yes. That's why I usually just don't do it ;-) Further down my list is to start testing under Minerva. I'm dreading it. :( Actually, Minerva was a damn good OS, you'll probably have much less trouble there than with any QDOS version. Seeing that Minerva is free now I cannot think of a single reason why people even with old black boxes still use QDOS (nostalgia excluded). Marcel ___ QL-Users Mailing List http://www.q-v-d.demon.co.uk/smsqe.htm
Re: [Ql-Users] Ranting: A Story of two Operating Systems
Hmm, indeed. Malcolm On 23/02/2011 12:12, Lee Privett wrote: Oh dear you fell for Rich's QDOS trap 2, caugt mt.cm job look @ RWap Site loop Lee - Back to the QL- - Original Message - From: gdgqler To: ql-us...@q-v-d.com Sent: Wednesday, February 23, 2011 11:52 AM Subject: Re: [Ql-Users] Ranting: A Story of two Operating Systems On 23 Feb 2011, at 11:45, Rich Mellor wrote: The difference in MOD and DIV is mentioned in the SBASIC/SuperBASIC Reference Manual (plug) - And where exactly can you get hold of this Manual? (Attempting to unplug to let it flow). It seems a must. George ___ QL-Users Mailing List http://www.q-v-d.demon.co.uk/smsqe.htm ___ QL-Users Mailing List http://www.q-v-d.demon.co.uk/smsqe.htm ___ QL-Users Mailing List http://www.q-v-d.demon.co.uk/smsqe.htm
Re: [Ql-Users] Ranting: A Story of two Operating Systems
Marcel Kilgus wrote, on 23/Feb/11 12:21 | Feb23: Adrian Ives wrote: But what I would really like is some kind of document that sets out a list of things that fall in the category: This should work under QDOS, it says it should, but it doesn't … but we went ahead and fixed it in SMSQ Where does it say it should work under QDOS? I guess this wasn't consciously fixed in SMSQ/E, it's probably more a side effect of the new implementation. And documenting all possible side effects borders on the impossible, unfortunately. This is not just for me, but for any other poor sod who has to try developing system level code to run under both platforms. This is not the first time that I've encountered things that should work under QDOS but don't, yet they work fine under SMSQ. Supporting QDOS is a pain, yes. That's why I usually just don't do it ;-) Further down my list is to start testing under Minerva. I'm dreading it. :( Actually, Minerva was a damn good OS, you'll probably have much less trouble there than with any QDOS version. Seeing that Minerva is free now I cannot think of a single reason why people even with old black boxes still use QDOS (nostalgia excluded). I second that absolutely. I do hope Lau is listening. I saw at first hand how meticulous Lau was in sorting out QDOS bugs. There were many added features as well of course. The one that rescued a vast number of QLs I repaired was his ram check and error display. The ram check is writing rom images into ram, and reading back. He seeded this. Why? Well if a zero is written to a dead ram bit, zero is *always* read back, even if the bit is dead. I have mentioned this before but it is worth repeating. It is a classic example of how bad the QDOS ram check is. Phil Borman released a free Quanta version of QL Terminal. People reported it crashed if a directory modification was tried. It turned out he used a ramdisk and there was a dead bit in ram that was not picked up by QDOS. Minerva picked it up, and identified the failed chip. Incidentally I don't think Lau is getting his emails at l AT bergbland DOT info. This is the one I have and is shown on the web. If anyone is in touch with Lau could they ask him to email me. Tony -- QBBS (QL fido BBS 2:257/67) +44(0)1442-828255 t...@firshman.co.uk http://firshman.co.uk Voice: +44(0)1442-828254 Fax: +44(0)1442-828255 Skype: tonyfirshman TF Services, 29 Longfield Road, TRING, Herts, HP23 4DG ___ QL-Users Mailing List http://www.q-v-d.demon.co.uk/smsqe.htm
Re: [Ql-Users] Ranting: A Story of two Operating Systems
Page 34 of the QL Technical Guide; 6.3.3 Scheduler Loop Tasks states that: Calls from the scheduler loop do not interrupt atomic tasks. This means that operations such as allocating or releasing memory can be performed safely. Now admittedly it doesn't say This means that operations such as allocating or releasing memory AND starting jobs but, conversely, the definitive QDOS reference written by the author of QDOS himself doesn't say anywhere else that you can't. But anyway it's all a word game. We're probably doing things now with the QL platform that were never even imagined back when the machine and its original OS were first produced. In the driver I have decided to implement an OS Capability byte, which has bits set to indicate that the current OS is capable (or not capable) of doing things in a certain way. Bit 0 just got allocated to the function: Can launch tasks from the scheduler loop Maybe I'll be able to set it high for Minerva as well ;) In any event, I'm sure there will be a few more bits allocated before this driver makes it out of beta. I suspect that if I'd taken the path of simply not supporting QDOS (which, believe me, I would have loved to have done) the resulting product would be too restrictive to be useful. Anyway, I have no criticisms of SMSQ and the way it does things, nor of QPC2 - which has enabled me to develop this code so quickly. Adrian -Original Message- From: ql-users-boun...@lists.q-v-d.com [mailto:ql-users-boun...@lists.q-v-d.com] On Behalf Of Marcel Kilgus Sent: 23 February 2011 12:21 To: ql-us...@q-v-d.com Subject: Re: [Ql-Users] Ranting: A Story of two Operating Systems Where does it say it should work under QDOS? I guess this wasn't consciously fixed in SMSQ/E, it's probably more a side effect of the new implementation. And documenting all possible side effects borders on the impossible, unfortunately. ___ QL-Users Mailing List http://www.q-v-d.demon.co.uk/smsqe.htm
Re: [Ql-Users] Ranting: A Story of two Operating Systems
On Wed, Feb 23, 2011 at 6:33 AM, Tony Firshman t...@firshman.co.uk wrote: The one that rescued a vast number of QLs I repaired was his ram check and error display. The ram check is writing rom images into ram, and reading back. He seeded this. Why? Well if a zero is written to a dead ram bit, zero is *always* read back, even if the bit is dead. The correct, proper and full way to check dynamic RAM, learned from my mainframe-supporting days, is this: Write % to each location and read back. Write % to each location and read back. Write % to each location and read back. Write %10101010 to each location and read back. Write %01010101 to each location and read back. Write % to each location and read back. Write % to each location and read back. Write % to each location and read back. That's the quick way. The long form is also to write: %11011011 %10110110 %01101101 (ie: 11011011 rotated left each position) Then repeat rotating to the right each position, while writing complimentary and opposing data in adjacent bytes, noting that adjacent means physically adjacent, so you need to know something of the organization of the memory in the core/die. Shortcuts: % = 0 %01010101 = 85 %10101010 = 170 % = 255 Fun times! Dave ___ QL-Users Mailing List http://www.q-v-d.demon.co.uk/smsqe.htm