Project Six 6.0.3
  • 53,641 Hits Since 2023-0818-0832-5589
    ( Average 487 Per Daily Cycle )
    ( 109 Days Observed Thus Far )
    ( Phoenix, Arizona Time )
Catalog
( 24 )
ReadMe
( 8 )
History
( 9 )
Banners
( 0 )
Thumbs
( 1 )
Vods
( 0 )
Dossier
  • the 3 major errors in Project Six 6-0-3 v6.2.1:

    1. 1. the "#defines" used to include source codes
    2. 2. "using fb.graphics"
    3. 3. passing empty UDT arrays.
  • Example Code No.1:

    #define __SOURCE_PATH__ ../Project Six 6-0-3 (!__Alisha_version!)/ #define __FB_PATH__ #define __Include(_s) #Include Once #_s #define Include2(_l,_m,_r) __Include(_l##_m##_r) Include2( __SOURCE_PATH__ , ./FBImage , .bi ) using Fb.Graphics Include2( __FB_PATH__ , fbgfx , .bi )
  • Example Code No.2:

    VGA_Load ( VGA_Table ( ), Gamepack ) Do 'Gamepack_Main ( Gamepack_Data ( ), Gamepack ) Story_Main ( Pages ( ) ) Loop
  • Example Code No.3:

    /' Print "DevKit Story v6.2 Core / Gfx Manip / Gfx Manip" Flip : WaitKey ( ) End '/ Include2( __SOURCE_PATH__ , "./Core/Code/RGBA Macro" , .bas ) Include2( __SOURCE_PATH__ , ./Core/Code/Gfx Manip/Memory Management , .bas ) Include2( __SOURCE_PATH__ , ./Core/Code/Gfx Manip/Buffer Text , .bas ) Include2( __SOURCE_PATH__ , ./Core/Code/Gfx Manip/Validate Display , .bas ) Include2( __SOURCE_PATH__ , ./Core/Code/Gfx Manip/Make Fill , .bas ) Include2( __SOURCE_PATH__ , ./Core/Code/Gfx Manip/vBox , .bas ) Include2( __SOURCE_PATH__ , ./Core/Code/Gfx Manip/Buffer Inlay , .bas ) Include2( __SOURCE_PATH__ , ./Core/Code/Gfx Manip/Buffer Flip , .bas ) Include2( __SOURCE_PATH__ , ./Core/Code/Gfx Manip/Buffer Shift , .bas ) Include2( __SOURCE_PATH__ , ./Core/Code/Gfx Manip/Buffer Stretch , .bas ) Include2( __SOURCE_PATH__ , ./Core/Code/Gfx Manip/Buffer Make Seamless , .bas ) Include2( __SOURCE_PATH__ , ./Core/Code/Gfx Manip/Buffer Fill , .bas ) Include2( __SOURCE_PATH__ , ./Core/Code/Gfx Manip/Buffer Repeat , .bas ) Include2( __SOURCE_PATH__ , ./Core/Code/Gfx Manip/Buffer Wallpaper , .bas ) Include2( __SOURCE_PATH__ , ./Core/Code/Gfx Manip/Buffer Alpha , .bas )
  • Notice In examples No.1, No.2 & No.3; all 3 errors occur right off the bat, 2 of-which recur throughout the rest of the engine.

  • Notice in example No.4 the following breaks the compile due to undefined behaviors.

  • Example Code No.4:

    #IFDEF __STORY_DEBUG__ Print "Story DevKit v6.2.1 Core / Gfx Manip / Buffer Alpha" Flip : WaitKey ( ) #ENDIF Declare Sub Gfx_Buffer_Alpha ( ByRef Dest As FB.Image Ptr, A As Long = 0 ) Sub Gfx_Buffer_Alpha ( ByRef Dest As FB.Image Ptr, A As Long = 0 ) Dim As FB.Image Ptr Source = ImageCreate( Dest -> Width, Dest-> Height, RGBA ( 0, 0, 0, 0 ), 32 ) Swap Dest, Source Dim AS Double LevelsR = 0.43, LevelsG = 0.53, LevelsB = 0.33,LevelsTotal = 1.0, aA = 1.0 aA = A / 255.0 LevelsTotal = LevelsR + LevelsG + LevelsB LevelsR = LevelsR * LevelsTotal / 3.0 LevelsG = LevelsG * LevelsTotal / 3.0 LevelsB = LevelsB * LevelsTotal / 3.0 LevelsTotal = 1.0 If Dest = 0 Then Exit Sub Dim As Long pX = 0, pY = 0, pC = 0, pA = 0 Dim As Double pAC = 0.0 Dim As Long pAC2 = 0 For pY = 0 To Dest -> Height - 1 Step 1 For pX = 0 To Dest -> Width - 1 Step 1 pC = Point( pX, pY, Source ) pAC = ( RGBAr( pC ) * LevelsR + RGBAg( pC ) * LevelsG + RGBAb( pC ) * LevelsB ) pAC2 = RGBA ( RGBAr( pC ) * pAC, RGBAg( pC ) * pAC, RGBAb( pC ) * pAC, pA ) If RGBAa( pC ) <> 0 Then PSet Dest, ( pX, pY ), RGBA( pAC, pAC, pAC, pAC2 ) End If Next pX Next pY Source = ImageDestroy2 ( Source ) End Sub
  • Include2( , fbgfx, .bi )
    
    using Fb
    [5:14 PM]
    April 10, 2023
    
    NeinstarFilmƶ — 04/10/2023 6:46 PM
    Function SimplePrompt ( Msg As String = "", VGA As LongInt = &HFFFFFFFF, VGA_Mask AS LongInt = &HFFFFFFFF ) As String
        
        Dim As String C, CI : C = "" : CI = ""
        
        With __Alisha_
            
            Dim As LongInt VGA2 = VGA_Lookup2 ( VGA, VGA_Mask, ._VGA_Table ( ) )
            
            If Len ( Msg ) > 0 Then
            
                Draw String ( ( Pos - 1 ) Shl 3, ( CsrLin - 1 ) Shl 3 ), Msg, VGA2
                Locate CsrLin, Pos + Len ( Msg )
            
            End If
        
            Do
                CI = Inkey ( )
            
                Select Case Len ( CI )
                Case 1
                    Select Case CI
                    Case BKSP
                        If Len ( C ) > 0 Then
                            C = Left ( C, Len ( C ) - 1 )
                            Line ( ( Pos - 1 ) Shl 3, ( CsrLin - 1 ) Shl 3 ) - Step ( 7, 7 ), 0, BF
                            Locate CsrLin, Pos - 1
                            Flip
                        End If
                    Case CR
                        Return C
                    Case ESC
                        Return CI
                    Case Else 
                        
                        Select Case Asc ( CI )
                        Case 32 To 126
                            
                            C &= CI
                            Draw String ( ( Pos - 1 ) Shl 3, ( CsrLin - 1 ) Shl 3 ), CI, VGA2
                            Locate CsrLin, Pos + 1
                            Flip
        
                        End Select
        
                    End Select
                    
                End Select
                
                Wait 1, 1
            
            Loop
        
        End With
        
    End Function
    
    The above code crashes my Storybook 7 engine and I do not grasp why. (edited)
    April 15, 2023
    
    grymmjack — 04/15/2023 12:32 PM
    @NeinstarFilmƶ where is it crashing? you didn't really provide a lot of context. which part is it crashing on?
    April 17, 2023
    
    NeinstarFilmƶ — Yesterday at 10:27 AM
    "Wait 1,1" is the error
    [10:28 AM]
    Should be "Sleep 1,1"
    
    NeinstarFilmƶ — Yesterday at 10:41 AM
    Wait is causing it to crash erratically.
    [10:47 AM]
    No idea what wait is doing tho.
    
    NeinstarFilmƶ — Yesterday at 12:05 PM
    "Wait" was inducing some kind of IRQ/TSR condition. (edited)
    [12:06 PM]
    The intended command was Sleep 1,1
    April 18, 2023
    
    NeinstarFilmƶ — Today at 8:40 AM
    Another error was with the VGA palette code.
    
    NeinstarFilmƶ — Today at 9:57 AM
    (VGA _Lookup2)
    
    NeinstarFilmƶ — Today at 10:06 AM
    It was attempting to implement a bogus palette file.
    [10:09 AM]
    I guess I need to add a range check.
    
    NeinstarFilmƶ — Yesterday at 10:20 AM
    For example:
    If Index < LBound ( VGA_Table, 1 ) Or Index > UBound ( VGA_Table, 1 ) Then Return Index (edited)
    
    NeinstarFilmƶ — Yesterday at 3:38 PM
    Now there is an error for all occurances of "PageIndex".