Project

General

Profile

Actions

Bug #866

closed

Every interrupt function causing random amiga issues

Added by malcolm harvey about 3 years ago. Updated over 2 years ago.

Status:
Closed
Priority:
Normal
Target version:
Start date:
11/15/2021
Due date:
% Done:

0%

Estimated time:
Affected version:

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.

Actions #1

Updated by Francois Lionet about 3 years ago

  • Status changed from New to Feedback
  • Assignee changed from AOZ Studio Team to Francois Lionet

Please provide example code... ;)

Actions #2

Updated by malcolm harvey about 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.

Actions #3

Updated by malcolm harvey about 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
Actions #4

Updated by malcolm harvey over 2 years ago

This has now been resolved, an update recently by francois has fixed it.
Fixed.

Actions

Also available in: Atom PDF