home bbs files messages ]

Just a sample of the Echomail archive

Cooperative anarchy at its finest, still active today. Darkrealms is the Zone 1 Hub.

   PASCAL_LESSONS      Pascal Programming Lessons      361 messages   

[   << oldest   |   < older   |   list   |   newer >   |   newest >>   ]

   Message 325 of 361   
   Anton Shepelev to Anton Shepelev   
   TP 7.0 pointer passing convension   
   15 Feb 20 22:40:34   
   
   MSGID: 2:221/360.0 5e48573e   
   REPLY: 2:221/360.0 5e483984   
   PID: Sylpheed 3.7.0 (GTK+ 2.24.30; i686-pc-mingw32)   
   CHRS: IBMPC 2   
   TZUTC: 0200   
   I wrote:   
      
   > procedure AtoB(a: byte; var b: byte);   
   > begin asm   
   >     PUSH  AX           { store AX                 }   
   >     MOV   DI,  [BP+4]  { store offset  of b in DI }   
   >     MOV   ES,  [BP+2]  { store segment of b in ES }   
   >     MOV   AX,  [BP+8]  { store a in AX            }   
   >     MOV  [DI],  AX     { assign AX to a           }   
   >     POP   AX           { restore AX               }   
   > end end;   
      
   Here  is  a  fixed version, without redundant opera-   
   tions and with single-byte write:   
      
   procedure AtoB(a: byte; var b: byte);   
   begin asm   
      MOV   ES,  [BP+2]  { store segment of b in ES }   
      MOV   DI,  [BP+4]  { store offset  of b in DI }   
      MOV   AX,  [BP+8]  { store a in AX            }   
      MOV  [DI],  AL     { assign AL to a           }   
   end end;   
      
   ---   
    * Origin: nntps://fidonews.mine.nu - Lake Ylo - Finland (2:221/360.0)   
   SEEN-BY: 1/123 90/1 221/1 6 242 360 226/16 227/114 229/426 452 616   
   SEEN-BY: 229/1014 240/5832 249/206 317 400 280/464 5003 317/3 320/219   
   SEEN-BY: 322/757 342/200 423/81 633/0 267 280 281 412 414 640/1138   
   SEEN-BY: 640/1321 1384 712/620 848 770/1   
   PATH: 221/1 640/1384 712/848 633/280 229/426   
      

[   << oldest   |   < older   |   list   |   newer >   |   newest >>   ]


(c) 1994,  bbs@darkrealms.ca