Bug #866
closedEvery interrupt function causing random amiga issues
0%
Description
Using Every function or cmd is causing..(Amiga mode manifest issue). Beta 10&11 same.
a) Gosubs do not complete at random including ones with (if else endif inside them) evaluates are not working etc in the gosubs, they never complete and return.
b) Also alot of amiga (screen modes or screen display) fail to set or take any note of screen hide cmd/function etc you end up with screens to back instead front or not hidden at all.
c) I also found the program counter had moved to random positions in the code, very odd indeed.
..
It seams as paul found out, if one is using the "Every 1 proc " procedure, it seams to cause all the above in the current builds.
I disabled as did paul and found things now worked. Also because of this problem, I have been unable to use the previewer in Beta 10&11 at all, the code would only run in fullscreen browsers.
Updated by Francois Lionet almost 3 years ago
- Status changed from New to Feedback
- Assignee changed from AOZ Studio Team to Francois Lionet
Please provide example code... ;)
Updated by malcolm harvey almost 3 years ago
- Status changed from Feedback to Closed
Hmm, I dont know if I can replicate this simply.
Ill close the ticket and if I can find what does this simply ill add another ticket.
It might be best I put in a ticket showing just what is not working in the previewer instead.
Updated by malcolm harvey almost 3 years ago
Example of things that stop working recently in Amiga mode using "every x interrupt method" but did previously but work only now currently using alt method "Myint = Set Interval( 5, "readclock" ). (Basically if any of the below occurs it just stops executing.
Seams yes something in every has changed. Doing multiple screen open and hiding them straight after can stop it one after the other that you might have previously opened or even doing screen display 2,0,0,640,512 can also give an error which should not be.
I do think tho, its just some cascading effect simply using every now, bombing out normal commands that should not be effected.
..
(If else end if loops)
scrollinscreenu: // screen fades moves wipes etc. (This routine scrolls screen in from bottom to top (Experimantal) (not in use)
offsetposy=offsetposyvalue //offset y value preset before call start
offsetposy1=offsetposyvalue1 //offset y value preset before call start
screen display 0,offsetposxnow,offsetposy,320,256
screen display 1,offsetposx,offsetposy1,158,236
checkscrpos:
if offsetposy>=yposvalue // Stop if >=40 or moves 254 pixels up
offsetposy=offsetposy-2 // 2 pixel scroll
offsetposy1=offsetposy1-2
wait vbl
screen display 0,offsetposxnow,offsetposy,320,256
screen display 1,offsetposx,offsetposy1,158,236
goto checkscrpos
else
end if
// print offsetpos // print screen offset pos (Viewport)..//
return
...
(Open screen and hide screens)
//hidden screen 2 for inventory //Open second screen for copy and paste objects for blitter
Screen Open 2,640,512,256,Hires //This is the inventory screen/sprites and loading/exit pics screen 2
screen display 2,0,0,640,512
//Set Font "sapphire",14
screen hide 2
curs off
..
(Get block & put block)
if currentposmapcoord#=6.0 //cannonroom
screen 4
//Get Icon 2,1,0,128 To 160,256
Get Block 1,0,384,160,128
if showmudmap=1 //if mudmap showing bypass gfx
screen 10
Put block 1,0,0 //put current background screen 2
screen 0
goto Blitroomgfxdone
else
end if
screen 0
//Paste Icon 160,56,1
Put Block 1,160,56
Else
end if
Updated by malcolm harvey over 2 years ago
This has now been resolved, an update recently by francois has fixed it.
Fixed.