Comments (5)
The x86 is Little-Endian and I think the Microblaze is Big-Endian.
That might be the issue.
Did you define PF_BIG_ENDIAN_DIC
http://www.softsynth.com/pforth/pf_ref.php#Compiling-pForth
from pforth.
Thanks Phil, I'll take a look. Microblaze is configurable endianness, I'm pretty sure it was set to LE, but I'll check.
Would a 64 bit generated dictionary affect running on a 32 bit system?
I also tried this on an ARM 32 platform where I thought I would have more success. I generated the dictionary from the host, copied the static dictionary, but same issue.
What does work is to start forth on the embedded system with no dictionary. This requires some hacking of things to make pforth want to initialize the dictionary w/o FILEIO, but it does work. But to date, I've been unsuccessful in bringing over a static dictionary. In the end, this may be fine as the default dictionary is a bit "feature-full" for a no-OS embedded system, but I was just surprised by this behavior.
from pforth.
Would a 64 bit generated dictionary affect running on a 32 bit system?
Yes, they are incompatible. The C code should check for that but may not.
This requires some hacking of things to make pforth want to initialize the dictionary w/o FILEIO, but it does work.
How do you "initialize the dictionary" without compiling from files, loading a dictionary file, or building with a static dictionary?
from pforth.
I tried loading a 64-bit dictionary with a 32-bit pforth executable and got:
Error in pfLoadDictionary - cell size mismatch between .dic file and code
I also tried a 32-bit dic and 64-bit code and got the same error.
I am closing this because I think the problem was using a 64-bit dictionary on a 32-bit system.
You can compile a 32-bit pforth using
cd platforms/unix
make WIDTHOPT=-m32
If you have a missing bits file you may need gcc-multilib.
See https://www.geeksforgeeks.org/compile-32-bit-program-64-bit-gcc-c-c/
from pforth.
Thanks for trying! I for sure tried 64->32, so this is probably it. I have a 32-bit arm with linux on it and I can build the dic there and try it.
Thanks again for the help.
from pforth.
Related Issues (20)
- publish a pForth style guide for contributors
- benchmarks need updating for today's faster processors HOT 6
- pf_main questions HOT 8
- Improve documentation by porting from softsynth.com HOT 4
- Provide access to command line residue
- How to build the m library? HOT 3
- Structure tests broken on 32-bit builds
- Need docs for building standalone pForth executable HOT 1
- Build and test on Windows HOT 18
- pforth under OpenVMS HOT 2
- support multi-line comments using "("
- implement search-order wordset HOT 1
- cmake-based build does not work on Nixpkgs HOT 2
- issuing a '?' at the forth prompt crashes interpreter HOT 4
- mistake in definition of flnp1 HOT 5
- ANSI escape sequences on Windows
- PForth + FPGA Marketing HOT 2
- Using CreateGlueToC without a shell HOT 3
- Cannot build with PF_NO_SHELL
- TRACE of words with 2>R and 2R> is wrong. HOT 5
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from pforth.