|
|
1.1 ! root 1: \ ***************************************************************************** ! 2: \ * Copyright (c) 2004, 2011 IBM Corporation ! 3: \ * All rights reserved. ! 4: \ * This program and the accompanying materials ! 5: \ * are made available under the terms of the BSD License ! 6: \ * which accompanies this distribution, and is available at ! 7: \ * http://www.opensource.org/licenses/bsd-license.php ! 8: \ * ! 9: \ * Contributors: ! 10: \ * IBM Corporation - initial implementation ! 11: \ ****************************************************************************/ ! 12: ! 13: \ little- and big-endian FCODE IP access functions ! 14: ! 15: ! 16: ?bigendian [IF] \ Big endian access functions first ! 17: ! 18: ! 19: : read-fcode-num16 ( -- n ) ! 20: 0 fcode-num ! ! 21: ?arch64 IF ! 22: read-byte fcode-num 6 + C! ! 23: next-ip ! 24: read-byte fcode-num 7 + C! ! 25: ELSE ! 26: read-byte fcode-num 2 + C! ! 27: next-ip ! 28: read-byte fcode-num 3 + C! ! 29: THEN ! 30: fcode-num @ ! 31: ; ! 32: ! 33: : read-fcode-num32 ( -- n ) ! 34: 0 fcode-num ! ! 35: ?arch64 IF ! 36: read-byte fcode-num 4 + C! ! 37: next-ip ! 38: read-byte fcode-num 5 + C! ! 39: next-ip ! 40: read-byte fcode-num 6 + C! ! 41: next-ip ! 42: read-byte fcode-num 7 + C! ! 43: ELSE ! 44: read-byte fcode-num 0 + C! ! 45: next-ip ! 46: read-byte fcode-num 1 + C! ! 47: next-ip ! 48: read-byte fcode-num 2 + C! ! 49: next-ip ! 50: read-byte fcode-num 3 + C! ! 51: THEN ! 52: fcode-num @ ! 53: ; ! 54: ! 55: ! 56: [ELSE] \ Now the little endian access functions ! 57: ! 58: ! 59: : read-fcode-num16 ( -- n ) ! 60: 0 fcode-num ! ! 61: ?arch64 IF ! 62: read-byte fcode-num 7 + C! ! 63: next-ip ! 64: read-byte fcode-num 6 + C! ! 65: ELSE ! 66: read-byte fcode-num 1 + C! ! 67: next-ip ! 68: read-byte fcode-num 0 + C! ! 69: THEN ! 70: fcode-num @ ! 71: ; ! 72: ! 73: : read-fcode-num32 ( adr -- n ) ! 74: 0 fcode-num ! ! 75: ?arch64 IF ! 76: read-byte fcode-num 7 + C! ! 77: next-ip ! 78: read-byte fcode-num 6 + C! ! 79: next-ip ! 80: read-byte fcode-num 5 + C! ! 81: next-ip ! 82: read-byte fcode-num 4 + C! ! 83: ELSE ! 84: read-byte fcode-num 3 + C! ! 85: next-ip ! 86: read-byte fcode-num 2 + C! ! 87: next-ip ! 88: read-byte fcode-num 1 + C! ! 89: next-ip ! 90: read-byte fcode-num 0 + C! ! 91: THEN ! 92: fcode-num @ ! 93: ; ! 94: ! 95: ! 96: [THEN]
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.