Home  |  Contents 
Microcontroller and PC projects
  Forum Index : Microcontroller and PC projects         Section
Subject Topic: Introducing the Pi-cromite: first steps Post ReplyPost New Topic
Page of 18 Next >>
Author
Message << Prev Topic | Next Topic >>
matherp
Guru
Guru


Joined: 11 December 2012
Location: United Kingdom
Online Status: Offline
Posts: 1651
Posted: 04 April 2017 at 3:27pm | IP Logged Quote matherp



6x as fast as the Micromite eXtreme, this is MMBasic 5.3 running native on a Raspberry Pi 3 under Raspbian. The picture is of a Teraterm session on the PC connected to the Pi with SSH.

If you want to try it, load the attached to your Pi and execute it using the usual Linux syntax "./mmbasic". You may need to execute "chmod +x mmbasic" to set the file as executable.

2017-04-04_151107_mmbasic.zip

I don't think it needs anything else installing on the Pi to run - let me know.

The code is a port of MMBasic V5.3 with double precision floating point and 64-bit integers. The executable is posted with Geoff's approval. Basic file handling is supported as in the picture but error handling is primitive/non-existent. Time$, date$ and timer are supported but there is no other peripheral support at the moment. The FILE command can be used (without arguments) to list the contents of the current directory (use "Print cwd$" to see where you are)

It has been tested with cdeagle's code for calculating solar eclipses and exactly matches the output of the MMX.

I'm doing the development on the Pi itself using Netbeans8.2/GCC




Edited by matherp on 04 April 2017 at 3:38pm



Back to Top View matherp's Profile Search for other posts by matherp
 
twofingers
Guru
Guru


Joined: 02 June 2014
Location: Germany
Online Status: Offline
Posts: 448
Posted: 04 April 2017 at 3:58pm | IP Logged Quote twofingers

WOW!

... today is not the 1. of april?

Thanks for the great job!

Michael


edit:
File names are case sensitiv!

Edited by twofingers on 04 April 2017 at 4:29pm
Back to Top View twofingers's Profile Search for other posts by twofingers
 
CaptainBoing
Senior Member
Senior Member
Avatar

Joined: 07 September 2016
Location: United Kingdom
Online Status: Offline
Posts: 136
Posted: 04 April 2017 at 5:58pm | IP Logged Quote CaptainBoing

you are prolific Peter!

is there support for the Pi hardware in/out, analogue in etc...?

<edit> ah... finished reading the post </edit>

cheers

Edited by CaptainBoing on 04 April 2017 at 6:00pm


__________________

all you need is duct tape and WD40 (if it moves and shouldn't, use duct tape; if it doesn't move and should, use WD40)
Back to Top View CaptainBoing's Profile Search for other posts by CaptainBoing
 
cdeagle
Senior Member
Senior Member


Joined: 22 June 2014
Location: United States
Online Status: Offline
Posts: 108
Posted: 04 April 2017 at 6:25pm | IP Logged Quote cdeagle

Another awesome effort Peter.

I'll have to dig out my Pi and give it a try.
Back to Top View cdeagle's Profile Search for other posts by cdeagle
 
jman
Guru
Guru
Avatar

Joined: 12 June 2011
Location: New Zealand
Online Status: Offline
Posts: 646
Posted: 04 April 2017 at 7:28pm | IP Logged Quote jman

Awesome effort.
Once this has peripheral support and graphics the sky's the limit


Regards
Jman
Back to Top View jman's Profile Search for other posts by jman
 
Grogster
Guru
Guru
Avatar

Joined: 31 December 2012
Location: New Zealand
Online Status: Offline
Posts: 4617
Posted: 05 April 2017 at 12:13am | IP Logged Quote Grogster

Impressive.

matherp needs an MMBASIC knighthood for all the developement he has done for the platform.....

I take it that this could also be run on the Pi Zero-W once development is complete?

If so, that opens up a very powerful MMBASIC on a very cheap $5 board - all you need to do is design a host board for the Pi-0W.

The MMX still wins in terms of number of I/O pins available, but I dearsay that the Pi with an I2C port-expander chip on it would solve that issue pretty quickly.

Nice work, matherp.

__________________
Smoke makes things work. When the smoke gets out, it stops!
Back to Top View Grogster's Profile Search for other posts by Grogster Visit Grogster's Homepage
 
TassyJim
Guru
Guru


Joined: 07 August 2011
Location: Australia
Online Status: Offline
Posts: 2063
Posted: 05 April 2017 at 1:38am | IP Logged Quote TassyJim

I think the winters are too long in the mother country.

A small bug:
Quote:
> > for zz = 2 to 10 :print zz : next zz

2
3
4
5
6
7
8
9
10
> > for zz = 10 to 2 step -1 : print zz : next zz

> >


not happy with STEP -1
At the prompt, it does nothing. In a program it is likely to give an error but not on that line.

Not sure why I am getting the double prompt but I suspect it is to do with using CD LF pairs in my TeraTerm configuration. I usually have to change it when talking to a Pi. - Yes, changing sending CR on it's own fixes the double prompt (as well as double line spacing).

If you want to talk to a Pi with MMEdit, you will have to enable Telnet on the PI and that should only be done within secure networks. It is not something I have tried yet.
There is no way MMEdit can use SSH although I will dust off a copy of plink and see what hope there is that way.

Well done Peter
Jim


__________________
It all started with the ZX81....
VK7JH
http://www.c-com.com.au/MMedit.htm
Back to Top View TassyJim's Profile Search for other posts by TassyJim Visit TassyJim's Homepage
 
matherp
Guru
Guru


Joined: 11 December 2012
Location: United Kingdom
Online Status: Offline
Posts: 1651
Posted: 05 April 2017 at 9:29am | IP Logged Quote matherp

Jim

Thanks for the report - I've made single vs double floating point a compilation option and missed one instance. Fixed in the attached.

I've also added the DIR$ function and an edit capability

If you type edit the program will save any program in memory to disk and open it for edit in a simple Linux editor (nano). When you have edited the program type ctrl-O to write the edited version to disk (accept the proposed filename) and ctrl-X to exit the editor. MMBasic will automatically load up the edited version ready for use.

This is tested and works nicely using Teraterm on a PC over SSH

This allows programs on a Pi to be remotely maintained over the network (NB the Pi 3 has built in wifi)

2017-04-05_092850_mmbasic.zip
Back to Top View matherp's Profile Search for other posts by matherp
 
cdeagle
Senior Member
Senior Member


Joined: 22 June 2014
Location: United States
Online Status: Offline
Posts: 108
Posted: 05 April 2017 at 7:54pm | IP Logged Quote cdeagle

Ran several of my programs on a Raspberry Pi 2 without any problems.

I'm using a USB mouse and keyboard along with an HDMI monitor to communicate with the Pi. Web connection via the Ethernet socket on the Pi.
Back to Top View cdeagle's Profile Search for other posts by cdeagle
 
TassyJim
Guru
Guru


Joined: 07 August 2011
Location: Australia
Online Status: Offline
Posts: 2063
Posted: 06 April 2017 at 12:52am | IP Logged Quote TassyJim

It works well with nano as the editor. When you exit nano, the mmbasic command prompt is there but the nano screen is still showing so the mmbasic prompt is not very obvious.
That is something that I have got used to with the limited Linux work I do but it is worth mentioning.

If you prefer to write your code on a Windows PC you can easily transfer it to the Pi with
copy the code to the clipboard
In TeraTerm:
NEW
AUTO
paste the code into TeraTerm (right click)
^C
Other useful commands are ^Z or QUIT to exit mmbasic and return to the Pi command prompt.

Get serial ports working and I won't have to get my hands dirty learning Python.

Jim

__________________
It all started with the ZX81....
VK7JH
http://www.c-com.com.au/MMedit.htm
Back to Top View TassyJim's Profile Search for other posts by TassyJim Visit TassyJim's Homepage
 
chronic
Guru
Guru


Joined: 21 January 2012
Location: Australia
Online Status: Offline
Posts: 440
Posted: 06 April 2017 at 3:38am | IP Logged Quote chronic

Does the pi version include lcd screen buttons, cfunctions etc ?
(I only ask as part of thinking about the difference between running in interpreted and compiled environments, especially linux etc)
Back to Top View chronic's Profile Search for other posts by chronic
 
TassyJim
Guru
Guru


Joined: 07 August 2011
Location: Australia
Online Status: Offline
Posts: 2063
Posted: 06 April 2017 at 4:34am | IP Logged Quote TassyJim

Think of the DOS version but double precision floating point and 64-bit integers.
No serial, I2C etc and no LCD (Yet)

Being a multitasking environment, accurate timing could be difficult.
Pi's are also missing analogue inputs which has always been a bugger.

Jim


__________________
It all started with the ZX81....
VK7JH
http://www.c-com.com.au/MMedit.htm
Back to Top View TassyJim's Profile Search for other posts by TassyJim Visit TassyJim's Homepage
 


Page of 18 Next >>
In the news...
 
Post ReplyPost New Topic
Printable version Printable version
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot delete your posts in this forum
You cannot edit your posts in this forum
You cannot create polls in this forum
You cannot vote in polls in this forum

Powered by Web Wiz Forums version 7.8
Copyright ©2001-2004 Web Wiz Guide

This page was generated in 0.0781 seconds.
Privacy Policy     Process times : 0, 0, 0, 0.08