Re: [ql-users] Using WMAN and EasyPTR
[EMAIL PROTECTED] wrote: There will be some more stuff, but that is still on the drawing board. Anyway, I will try to answer any questions anyone might have. Send it over please Marcel... Can do, but mind you this is is still subject to change. BTW - have you had any more thoughts on a runtime QPC2?? No, sorry. In fact I completely forgot about it. Too much other stuff going on right now, but I'll add it to my to-do queue. Marcel
Re: [ql-users] Using WMAN and EasyPTR
In a message dated 15/01/03 00:13:03 GMT Standard Time, [EMAIL PROTECTED] writes: Well, apart from the sprite thing I posted yesterday there's currently only the new colour definition and the system palette, for both I have written some documentation you can use. There will be some more stuff, but that is still on the drawing board. Anyway, I will try to answer any questions anyone might have. Send it over please Marcel... BTW - have you had any more thoughts on a runtime QPC2?? -- Rich Mellor RWAP Software 35 Chantry Croft, Kinsley, Pontefract, West Yorkshire, WF9 5JH TEL: 01977 610509 http://hometown.aol.co.uk/rwapsoftware
Re: [ql-users] Using WMAN and EasyPTR
OK, I have tried to create a null pointer. However, can anyone please explain why the following code shows 2 pointers on screen: 7830 OUTL #1 7832 REMPT #1:REMark remove pointer 7840 REMPT #0 7850 LOAD_NEW_POINTER 7860 REMark Set up Null pointer 7870 RESTORE 7940 7880 BlankPtrAdd = ALCHP(100) 7890 FOR i=0 TO 11:READ byte:POKE BlankPtrAdd+i,byte 7900 POKE_L BlankPtrAdd+12,BlankPtrAdd+24:REMark Colour Pattern Pointer 7910 POKE_L BlankPtrAdd+16,BlankPtrAdd+24:REMark Colour Pattern Mask Pointer 7920 POKE_L BlankPtrAdd+20,BlankPtrAdd+24:REMark Pointer to next definition 7930 SPRS #1,BlankPtrAdd 7940 Data 0, 0, 0, 0: REMark Form 7950 Data 0, 0, 0, 0: REMark Size(x And y) 7960 Data 0, 0, 0, 0: REMark origin 8330 op% = 16 + 8 + 1 8340 REPeat loop 8350 IF old_x1%x1% OR old_y1%y1% 8360 REMark Draw pointer, removing pointer from last position 8370 PIC_RESTORE pointer_PSA,#1,old_x1%,old_y1% 8380 pointer_PSA=PIC_STORE(#1,Pointer_Xsize,Pointer_Ysize,x1%,y1%) 8390 SCRSHOW_TRANSPARENCY Pointer_base,#1,x1%,y1%,Pointer_Xsize,Pointer_Ysize,Pointer_Background:old_x1%=x1%:old_y1%=y1% 8400 End If 8410 RDPT #1,op%,x1%,y1%,1 8420 Dim result%(15) 8430 PVAL #1,result% 8440: 8450 key_press = result%(5) 8460 SELect ON key_press 8470 =1 8480 REMark Left mouse click 8490 IF WindowButtons$(0)="" 8500 REMark We just want to return on a keypress 8510 KEY_UP 8520 RETurn -1 8530 Else 8540 REMark Check each button in turn 8550 For button = 0 To NumberOfButtons 8560 IF Button_Location(button,0)=1 8570 IF x1%=Button_Location(button,3) AND x1%=Button_Location(button,3)+Button_Location(button,1) AND y1%=Button_Location(button,4) AND y1%=Button_Location(button,4)+Button_Location(button,2):KEY_UP:RETurn button 8580 End If 8590 END FOR button 8600 End If 8610 End Select 8620 END REPeat loop 8990 DEFine PROCedure LOAD_NEW_POINTER 9000 Pointer_file$=Graphic_dir$'Pointer'dispmode%'_scr' 9010 Pointer_len=FLEN(\Pointer_file$) 9020 Pointer_base = ALCHP(Pointer_len) 9030 LBYTES Pointer_file$, Pointer_base 9040 Pointer_Background = PEEK_W(Pointer_base) 9050 END DEFine (the LOAD_POINTER procedure loads a simple screen dump of a new pointer definition). I cannot simply replace the existing pointer definition as this will cock things up on the Aurora.. Your thoughts/ideas would be much appreciated... -- Rich Mellor RWAP Software 35 Chantry Croft, Kinsley, Pontefract, West Yorkshire, WF9 5JH TEL: 01977 610509 http://hometown.aol.co.uk/rwapsoftware
Re: [ql-users] Using WMAN and EasyPTR
On 13 Jan 2003, at 7:41, [EMAIL PROTECTED] wrote: OK, I have tried to create a null pointer. However, can anyone please explain why the following code shows 2 pointers on screen: As I don'thave easyptr, I can't really comment. However, the sprite defintion seems wrong to me 1 - the form should be data 1,0,0,0 2 - , line 7920 should be: 7920 POKE_L BlankPtrAdd+20,0:REMark Pointer to next definition (there is none) 3 - Im' not sure whether the size should be 0 try ti set it to 0,2,0,2 Here is a null sprite definition (in asm) I *Know* works: sp4_vide; this is just an empty sprite DC.W$0100,$ DC.W2,2,0,0 DC.Lsc4_vide-* DC.Lsc4_vide-* DC.L0 sc4_vide DC.L$,$ ; just a transparent sprite I hope this helps Wolfgang - www.wlenerz.com
Re: [ql-users] Using WMAN and EasyPTR
[EMAIL PROTECTED] wrote: Yup, that works just fine - thankyou for pointing out the problems - I am not so sure what the form values mean and how these should be altered for GD2 graphics Well, in this case, not at all. can anyone enlighten me?? First byte: 1 = QL mode, 2 = GD2 Second byte: QL: 0 = mode 4, 1 = mode 8 GD2: mode number (32, 33, 64 etc) Marcel
Re: [ql-users] Using WMAN and EasyPTR
Rich Mellor writes: OK, I have tried to create a null pointer. However, can anyone please explain why the following code shows 2 pointers on screen: Your thoughts/ideas would be much appreciated... Two pointers?! I couldnt properly run the code, so I cant really say. However perhaps this null sprite definition may work better: rem Set up Null pointer restore BlankPtrAdd = alchp(32) for i = 0 TO 30 step 2: read word: poke_w BlankPtrAdd + i, word : data $0100, $ :rem .w form, time/adaption data $0001, $0001 :rem .w x size, y size data $, $ :rem .w x origin, y origin data 0, $000C:rem .l pointer to colour pattern data 0, $0008:rem .l pointer to pattern mask data 0, $:rem .l pointer to next definition : data $, $ :rem .w colour pattern data $, $ :rem .w pattern mask You shouldnt need to use REMPT before using this sprite. In an SBasic with the standard windows try: outl#0: cls rem Set up Null pointer here, as above sprs#1; BlankPtrAdd x% = -1: y% = -1: tv% = 13 rep rdpt#1; tv%, x%, y% print#0; tv%, x%, y% endrep Per
Re: [ql-users] Using WMAN and EasyPTR
- Original Message - From: [EMAIL PROTECTED] To: [EMAIL PROTECTED] Sent: Sunday, January 12, 2003 9:48 PM Subject: [ql-users] Using WMAN and EasyPTR What is the best way of setting the mouse pointer to a blank pointer, so nothing appears on screen when the mouse is moved about. hows about some very dark glasses Rick (:-) All the best - Bill
Re: [ql-users] Using WMAN and EasyPTR
Rich Mellor writes: What is the best way of setting the mouse pointer to a blank pointer, so nothing appears on screen when the mouse is moved about. I have tried REMPT from EasyPTR, but this does not appear to work that well - when you use RDPT to read the mouse position, you get flickering of the standard WMAN mouse pointer... Depending on the effect you wish to achieve, you could try fiddling with the termination vector. Try tv% = %10110100 as in 100 OUTL#0 110 tv% = %10110100 120 x% = 0: y% = 0: sw% =-1 130 REPeat 140 RPTR#0; x%, y%, tv%, sw%, xr%, yr%, t$ 145 PRINT#0; x%, y%, tv%, sw%, xr%, yr%, t$ 160 END REPeat (Tested with Smsq/e 2.93 and 2f99) When bit #7 is set in the termination vector a window request is initiated - same as when you do a Move - so the sprite is active across all windows. Terminate the operation with a HIT or a DO. If you just wanted something local, you could try designing a null sprite instead, but I havent tried this. Per