Topics

Membership Card Rev JK2 - Tiny Basic Hex file #MembershipCard #BASIC

dmatyja2002
 

Hello group,

Does anyone have a working Tiny Basic hex/bin file that I can load on my all memory (32K LO & HI) Membership card rev. JK2, that I recently completed?
I tried the hex file here --> http://www.retrotechnology.com/memship/tb0_christiansen.zip
It is trying to work but perhaps a active low/high serial issue? Working to get A18 up and running on a Pi but got over a 1000 errors on compile.

I am loading my membership card using Don Meyer's loader --> https://bitbucket.org/don/cosmac-1802-membershipcard-loader/src/master/
I am successfully running the Super Monitor and BASIC3 with no issues using the bin file here --> http://www.sunrise-ev.com/MembershipCard/MCSMP20B.bin

Hoping to get a auto run Tiny Basic setup going.

Thanks for any help in advanced.

-Dan

Gregg Levine
 

Hello!
Dan are you also running the Arduinio stuff on the Pi? Or is that
running on the system that the Pi is showing a terminal screen on? And
what is your entire environment consisting of? How was the loader from
the Arduinio to the CDP1802 built? Dan's notes indicate that he built
an I2C device that translates data presented using the sketch provide
and sends it out via parallel format to the CDP1802 board.


Lee, I'm using the term "board" where our questioner used the term
"Membership card rev. JK2" because someone such as myself would want
to make use of the schematic for it, but to stretch the build onto
larger boards.

Please note that I have not as yet announced that I going to do that,
I'm just asking the questions that all of us are thinking of asking.
-----
Gregg C Levine gregg.drwho8@...
"This signature fought the Time Wars, time and again."

On Mon, Nov 25, 2019 at 8:05 PM dmatyja2002 via Groups.Io
<dmatyja2002=yahoo.com@groups.io> wrote:

Hello group,

Does anyone have a working Tiny Basic hex/bin file that I can load on my all memory (32K LO & HI) Membership card rev. JK2, that I recently completed?
I tried the hex file here --> http://www.retrotechnology.com/memship/tb0_christiansen.zip
It is trying to work but perhaps a active low/high serial issue? Working to get A18 up and running on a Pi but got over a 1000 errors on compile.

I am loading my membership card using Don Meyer's loader --> https://bitbucket.org/don/cosmac-1802-membershipcard-loader/src/master/
I am successfully running the Super Monitor and BASIC3 with no issues using the bin file here --> http://www.sunrise-ev.com/MembershipCard/MCSMP20B.bin

Hoping to get a auto run Tiny Basic setup going.

Thanks for any help in advanced.

-Dan

dmatyja2002
 

Hi Gregg,

I am using Don's loader --> https://bitbucket.org/don/cosmac-1802-membershipcard-loader/src/master/
It requires an Arduino and MCP23017 Port Expander chip which I have connected to a Window 7 box to run the Python tools (see attached photo).
I am also using a Teensy 2.0 as a USB to TTL Serial adapter connected to the Membership Card serial port.

Everything works great with the 
Super Monitor and BASIC3 here --> http://www.sunrise-ev.com/MembershipCard/MCSMP20B.bin

I was just hoping to find a similar hex/bin with Tiny Basic instead of the Basic3.

I went down a path to compile the Tiny Basic source from here --> http://www.retrotechnology.com/memship/tb0_christiansen.zip
I attempted this under Linux on a Pi Zero. Simple source files compile fine, but the Tiny Basic file is another story, hence why I hope someone has already build an image for the Membership card :-)

Hope that helps.

Regards,

-Dan

Gregg Levine
 

Hello!
Nice setup. Using that Teensy to translate from one to the other is a
good one. And using the Microchip I2C converter makes sense. Anyone
else have anything to add? I was curious as to how the whole business
was wired together.
-----
Gregg C Levine gregg.drwho8@...
"This signature fought the Time Wars, time and again."

On Tue, Nov 26, 2019 at 12:15 AM dmatyja2002 via Groups.Io
<dmatyja2002=yahoo.com@groups.io> wrote:

Hi Gregg,

I am using Don's loader --> https://bitbucket.org/don/cosmac-1802-membershipcard-loader/src/master/
It requires an Arduino and MCP23017 Port Expander chip which I have connected to a Window 7 box to run the Python tools (see attached photo).
I am also using a Teensy 2.0 as a USB to TTL Serial adapter connected to the Membership Card serial port.

Everything works great with the Super Monitor and BASIC3 here --> http://www.sunrise-ev.com/MembershipCard/MCSMP20B.bin

I was just hoping to find a similar hex/bin with Tiny Basic instead of the Basic3.

I went down a path to compile the Tiny Basic source from here --> http://www.retrotechnology.com/memship/tb0_christiansen.zip
I attempted this under Linux on a Pi Zero. Simple source files compile fine, but the Tiny Basic file is another story, hence why I hope someone has already build an image for the Membership card :-)

Hope that helps.

Regards,

-Dan

Karl Schultz
 
Edited

On Mon, Nov 25, 2019 at 06:05 PM, dmatyja2002 wrote:
Working to get A18 up and running on a Pi but got over a 1000 errors on compile.
That's odd.  I don't have a Pi (yet), but I've had no trouble recently with compiling A18 on my desktop Linux box.

I got the sources from this GitHub repo.  There was only one benign warning.  I just used gcc 7.4.0 with -DMODERN set.  Even without -DMODERN, there's only one error and a few warnings.

The only other thing I can think of is that the line terminators may be screwed up, depending on where you got the files and how you downloaded them.

Lee Hart
 

dmatyja2002 wrote:
Hello group,

Does anyone have a working Tiny Basic hex/bin file that I can load
on my all memory (32K LO & HI) Membership card rev. JK2, that I
recently completed? I tried the hex file here -->
http://www.retrotechnology.com/memship/tb0_christiansen.zip
It is trying to work but perhaps a active low/high serial issue?
I have a copy on my website as well. It's also from Christiansen's work, but it does run on my 1802MC. I'm using an RS-232 interface, and an old PC with a real serial port and DOS modem program set to 2400 baud, 7N1 format.

It seems like most of the problems people have are on the PC end. There are all sorts of "gotchas" in getting a USB-serial adapter to work, and configuring all the confusing options on modern terminal programs. So I'd start there; make sure you can successfully send/receive serial data even without the 1802MC involved.

Lee

Gregg Levine wrote:
Lee, I'm using the term "board" where our questioner used the term
"Membership card rev. JK2" because someone such as myself would want
to make use of the schematic for it, but to stretch the build onto
larger boards.
Yep; that's quite all right. I named it the "membership card" precisely as an entry point to the 1802. You have to get them started somehow!

Building an original Elf is hard! Rare/obsolete parts, no PC board so you have to wire-wrap it, etc. So I made an "all in one" package with all the parts and easy assembly, to introduce people to this fascinating CPU.

It seems to have worked. Many people have gone on to build ever more impressive 1802 builds, learning and growing as they go!

Lee




--
ICEs have the same problem as lightbulbs. Why innovate and make
better ones when the current ones burn out often enough to keep
you in business? -- Hunter Cressall
--
Lee Hart, 814 8th Ave N, Sartell MN 56377, www.sunrise-ev.com

Wa6pzb@...
 

Thanks Lee,

I tried 2400 7N1 still no joy.

I am running MCSMP20B.bin and MCBASIC3J.bin with no problems. Serial working great via Putty, Realterm, etc.

I was hoping if someone had a working Tiny Basic on their Membership Card they could just drop me their hex/bin file.

I will get the A18 assembler going this weekend when I have more time and try to build it with different options.

Thanks for the help.

-Dan

the-eagle@att.net
 

 

Dan,

 

            I am sure that I can help you out with Tiny Basic/MCSMP20 for your system. Email me at the email address shown above.

 

Regards,

Chuck Yakym

thinkpast
 

Dan, sorry I didn't get your email directly to me, about something I offer on my Web site. And I don't follow cosmacelf in real-time. I found your post today.

http://www.retrotechnology.com/memship/mship_tbasic.html

is the link to my Web page, where I describe the Tiny BASIC I offer. It helps to read some documentation, and to refer others you ask, to the same documentation. I believe Lee Hart's TB binary ZIP file, is exactly my file - he has a copy and a different link to it on his Web site.

You describe your use of the 1802 MC rev JK2, as *all RAM* with some kind of hardware loader.

*BINGO* Not many people, operate the 1802 MC in all-RAM.

Well, the Tiny BASIC expects to see itself in ROM. When TB starts, it looks around to see where RAM is, and then sets up the highest RAM locations for variables and such, and just below that for programs. It also looks in ROM, to find a BASIC program, and loads THAT into RAM to operate it. You'd have to read the TB source-code, to get that information. But the Web page does describe a ROM/RAM environment many times.

All those tests will goof up, if TB is operated from RAM. When Loren was working on this TB (as mentioned on my Web page and in the ZIP file), he disabled the RAM-search and set it up to use a fixed location for RAM. I'm not gonna guess the details "on the fly". I don't have those details in hand, it was well over a year ago. But other people including him, may be able to provide specific fixes to the source, after they read the source, which is in the ZIP file.

If you please: I'll be glad to host the fixes that someone determines. My apologies for not working on it myself but I'm pointing pretty hard at how one might do that.

.You also posted "Working to get A18 up and running on a Pi but got over a 1000 errors on compile."

That's another problem and story. But A18 is documented and if you are getting that many errors, it's very likely because whatever C compiler you are using, is unhappy about the C syntax of the A18 C source, or is unhappy about some compilation feature. I can't debug C compilers."Reading the fine Web page" may be informative. While I offer a Windows 32-bit MSDOS executable, I don't offer a Linux or OS X executable if that's your OS. If you check my A18 Web page, there's a link to another person who offers a github "spin" of A18, which he documents, so you can see if that works better. There are other 1802 cross assemblers too, but you'll likely have to make some C syntax adjustments. Still, A18 is surprisingly portable.

Failing to assemble Tiny BASIC, you may find you can binary-patch it, to get around the all-RAM problem. (shrug) this is what people did in the ancient 8-bit world.

That's all I've got today. Good luck and sorry, but after all, these are the problems people encountered decades ago, too. Same hardware, same software, same problems. A good part of the fun at the time, was making things work!

Regards and good holidays
Herb Johnson

dmatyja2002
 

Hi Herb,

Thanks for your detailed reply and help. Chuck reached out to me and I have a working .bin file now.
It was great to get all the responses and help on my questions.
It is fun to play with an 1802 again. I had a Netronics ELF kit back in the day.
The Membership card is a great kit now to pick up where I left off when I could not afford memory or fancy software like Tiny Basic :-)

Cheers,

-Dan

thinkpast
 

Thanks for your detailed reply and help. Chuck reached out to me and I have a
working .bin file now.
Please do me and others who use this Tiny Basic a favor? Please tell me what the fix was? If you don't know, send me the fixed binary you have? My email address is available from any of my Web pages, at the bottom of each Web page. Thank you.

And Chuck - do me the same courtesy? Presumably you can explain the fix as you executed it.

As I'm distributing this version of Tiny BASIC, I am trying to provide some support and problem-solving. The version at Lee Hart's site, is a copy of my version.

Regards, Herb Johnson
retrotechnology.com

Raymond Sills
 

Hi Guys:

Why is it that there are two (possibly more) versions of Tiny BASIC?  Presumably, one or more versions have deleted features or functions deemed not worth including.  I have a Tiny BASIC board for the RCA VIP, and IIRC, it uses about 4K of ROM.  I never tried looking at the underlying hex code.

73 de Ray



-----Original Message-----
From: the-eagle@... <The-Eagle@...>
To: cosmacelf <cosmacelf@groups.io>
Sent: Thu, Nov 28, 2019 2:17 pm
Subject: Re: [cosmacelf] Membership Card Rev JK2 - Tiny Basic Hex file #BASIC #MembershipCard

Herb, read the email that I just sent you. We are not using the version of Tiny Basic that you are distributing.

Regards,
Chuck

ajparent1/kb1gmx <kb1gmx@...>
 

There are many versions.

For example I have a copy of QUEST TB on paper tape meant to be loaded into ram.

So when people say tiny basic the only meaning it has it s a typically integer basic
with out strings or maybe limited strings. 

Allison

ajparent1/kb1gmx <kb1gmx@...>
 

My archive has more than five distinctly different tiny or small basics, not 
a this is a mod of that but distinct different origins.  I also may be under
counting that.

In the early days there wer three peices of software that many tried or did.
Monitor
Basic
Assembler,
Editor

That generally applies to most all of the micros.

Lee Hart
 

Raymond Sills via Groups.Io wrote:
Hi Guys:

Why is it that there are two (possibly more) versions of Tiny BASIC?
Presumably, one or more versions have deleted features or functions
deemed not worth including. I have a Tiny BASIC board for the RCA VIP,
and IIRC, it uses about 4K of ROM. I never tried looking at the
underlying hex code.
Tom Pittman's original Tiny BASIC was 2K bytes, but it did *not* include the I/O drivers. It just had three LBR's (CONIN, CONOUT, and BREAK), which you had to patch to point to your system's I/O drivers.

On an Elf with one of RCA's monitors (i.e. UT4), or a Quest or Netronics Elf with their monitors, you had to provide your own I/O routines. These vectors were then patched to jump to your routines. They would of course be different for every system, as there were no standards in those days. It might use Q and EF3 or EF4, a parallel port, an actual UART chip, an 1861 video chip, etc.

Tom provided detailed instructions for modifying Tiny BASIC. When the system had extra features (like an 1861 video chip), then people extended Tiny BASIC to add commands to control it. The RCA VIP, Netronics, and Quest Elves all did this.

You're generally going to download a "package" that comes with somebody's hardware-specific I/O routines already included. To work, your Elf needs to have the *same* hardware setup. Or, you have to change it to support the hardware you have.

Lee
--
ICEs have the same problem as lightbulbs. Why innovate and make
better ones when the current ones burn out often enough to keep
you in business? -- Hunter Cressall
--
Lee Hart, 814 8th Ave N, Sartell MN 56377, www.sunrise-ev.com

thinkpast
 

Ray: to your point. You are mistaken in your assumptions.

Chuck failed to post, that the user's problem was with their serial interface and how my particular Tiny BASIC plus IDIOT monitor, in the binary given, didn't happen to fit this guy's use of Lee's 1802 Membership Card. His problems were not with my flavor of "Tiny BASIC", which is the same Tom Piittman's code from RCA of decades ago. The various "version" differ, in monitor-like code and how "serial" is implemented. Ray - please take note of this description of Tiny BASIC variations.

So Chuck - you left the impression that you used your code, because my code was defective or faulty in some way. And so, Ray posts in effect "why does Herb have this nonworking version of Tiny BASIC?". That's what he implied. Ray, I'm sure Chuck used his code, because it was familiar to him; he was not obliged to use mine. The guy wanted a working Tiny BASIC, Chuck gave him one that worked - problem solved.

But pardon me, if this leaves me unhappy. The problems with COSMAC programs and computers, which use EF3 or EF4, and Q, to operate as a software serial UART,- all in different ways, on any kind of modern computer and USB/serial dongle - have been discussed many times in this discussion list. My Web pages include several on the subject. Chuck should have pointed to this as the problem, to avoid confusion about my particular version of Tiny BASIC.Those unfamiliar, can search my site and the Web and this discussion group for details.

I've added a note to my TB Web page, to point to my IDIOT monitor Web page, which discusses the issue of setting up the EF's and Q. That may help the next person who uses my TB and gets stuck. By the way: my guess that it was a RAM problem? Not a problem. Thanks to Loren Christensen for verifying that is not a problem.

I hope those who read my Web pages, get the idea that I'm trying to help them out, and provide tools and means to work with their COSMAC computers, the 1802 MC in particular. I give them means to contact me if they have problems. I am sorry the user did not contact me, but that's not his obligation to do so. But when my code is mentioned in a public forum, I feel obliged to speak up, and of course to help some user of it if I can. So pardon me again, for being unhappy that I spent time on this Thanksgiving, trying to help this user - and was left explaining how one's persons fix did not mean my code was particularly at fault. And I've learned something about giving help when I was not asked personally for help.

Regards,
Herb Johnson

ajparent1/kb1gmx <kb1gmx@...>
 

Herb,

One of the issues with groups.io in general is that most users are Email based and
this very note if left idle for a week is effectively forgotten even thought the web version
you can look back and all.  So despite a huge history of questions and answers 
the same questions will reappear and get forgotten.

Hint: there is a Wiki and its editable.  Stuff that pops up needs to be there if only
so "read the wiki" has meaning.

As to 1802 software, if there is any standards it is the lack of any, save for those that
RCA built to or suggested.    A week or so ago I whinged about old programs are often
hex only, no source.  Rather than rehash, it makes for tracking down those "special"
addresses part of the un fun work.   The end result is that While the 1802 is very
capable processor its sorta stuck in the late 70s or requires new from the ground
up development.  Same reason old ways are awkward to use with some new ways.

That's not your fault as preserving what has been done is a big deal.  However
old code has that issue that doing something new without complete context is a pain
or a bit of forensic re-engineering.

Allison