From: Dirk B. <db...@us...> - 2006-08-13 07:59:08
|
Update of /cvsroot/win32forth/win32forth/src/kernel In directory sc8-pr-cvs9.sourceforge.net:/tmp/cvs-serv21183/src/kernel Modified Files: fkernel.f Log Message: - IN-PREVIOUS added. It restores the data area after a call to IN-APPLICATION IN-SYSTEM or IN-CODE. Index: fkernel.f =================================================================== RCS file: /cvsroot/win32forth/win32forth/src/kernel/fkernel.f,v retrieving revision 1.33 retrieving revision 1.34 diff -C2 -d -r1.33 -r1.34 *** fkernel.f 4 Aug 2006 09:48:43 -0000 1.33 --- fkernel.f 13 Aug 2006 07:58:59 -0000 1.34 *************** *** 3043,3047 **** CREATE CDP 0 , 0 , 0 , DP-LINK LINK, ," CODE" \ code ! ADP VALUE DP \ data pointer defaults to app space \ ----------------- Switching dictionary words --------------- --- 3043,3048 ---- CREATE CDP 0 , 0 , 0 , DP-LINK LINK, ," CODE" \ code ! ADP VALUE DP \ data pointer defaults to app space ! ADP VALUE ODP \ data pointer defaults to app space \ ----------------- Switching dictionary words --------------- *************** *** 3052,3057 **** \ \ IN-xxxx is used in open code to switch HERE ALLOT , W, etc to point ! \ to the specific data area; no save is made of the current DP, so ! \ it has to be reset back explicitly. \ \ >XXXX and XXXX> move to and from a specific data area, and save the --- 3053,3058 ---- \ \ IN-xxxx is used in open code to switch HERE ALLOT , W, etc to point ! \ to the specific data area; the current DP is saved in ODP, so ! \ it can be reseted using IN-PREVIOUS. \ \ >XXXX and XXXX> move to and from a specific data area, and save the *************** *** 3060,3066 **** \ ! : IN-APPLICATION ( -- ) ADP TO DP ; \ set the correct pointer ! : IN-SYSTEM ( -- ) SDP TO DP ; ! : IN-CODE ( -- ) CDP TO DP ; : >DP ( dp -- ) R>DROP DP R> 2>R TO DP ; \ save the current DP, set new --- 3061,3079 ---- \ ! : IN-APPLICATION ( -- ) \ w32f ! \ *G Activate the application data area. ! DP TO ODP ADP TO DP ; ! ! : IN-SYSTEM ( -- ) \ w32f ! \ *G Activate the system data area. ! DP TO ODP SDP TO DP ; ! ! : IN-CODE ( -- ) \ w32f ! \ *G Activate the code data area. ! DP TO ODP CDP TO DP ; ! ! : IN-PREVIOUS ( -- ) \ w32f ! \ *G Restore the data area after a call to IN-APPLICATION IN-SYSTEM or IN-CODE. ! ODP TO DP ; : >DP ( dp -- ) R>DROP DP R> 2>R TO DP ; \ save the current DP, set new |