[Back to POINTERS SWAG index] [Back to Main SWAG index] [Original]

    {

       Pointers functions: returns the segment and the offset in hexadecimal
       value (in a string variable)

                   ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ»
                   º                                        º°
                   º          AVONTURE CHRISTOPHE           º°
                   º              AVC SOFTWARE              º°
                   º     BOULEVARD EDMOND MACHTENS 157/53   º°
                   º           B-1080 BRUXELLES             º°
                   º              BELGIQUE                  º°
                   º                                        º°
                   ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ¼°
                   °°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°

    }

    Function Segment (Chiffre : Pointer)  : String;

    Type TWordRec = Record
           Lo, Hi : Word;
        End;

    Begin

         Segment := Word2Hex(TWordRec(Chiffre).Hi);

    End;

    Function Offset (Chiffre : Pointer)  : String;

    Type TWordRec = Record
           Lo, Hi : Word;
        End;

    Begin

         Offset := Word2Hex(TWordRec(Chiffre).Lo);

    End;

    Var
       p : Pointer;

    Begin

       p := Ptr($B800:$0000);

       Writeln (Segment(p),":",Offset(p));

    End.

[Back to POINTERS SWAG index] [Back to Main SWAG index] [Original]