Showing posts with label Apple. Show all posts
Showing posts with label Apple. Show all posts

Tuesday, March 31, 2026

what is the deal with 80s computer keyboards

I hear social media video blogger repeat over and over that there was not a keyboard standard in the 70s and 80s for home computers. This unfortunately is true - kinda. There were really two loose standards. How do I know? First, I own quite a few computers from the 80s. It was IBM PC that broke the simi-standard and then redefined the overall standard by "winning" the PC wars.

So what was the standard layout before IBM changed it all?

First there is What I call Standard I - This was used by majority of the early 70-80s home computers

1) QWERTY keyboard like most type-writters

2) Specific characters associated with SHIFT and numbers



(Photo of a Commodore 64 keyboard)


(Photo of a Tandy CoCo 2 keyboard)

(Photo of an Atari 130XE keyboard)

Above the 1=!, 2=", 3=#, 4=$, 5=%, 6=&, 7=', 8=(, 9=)

Who adhered to this Standard I:
- Amstrad
- Apple I and II
- Atari (400, 800, 800XL, 130XE,  ect) - *Mostly*
- Commodore (PET, Vic 20, C64)
- Dragon (32 and 64 computers)
- Tandy (Model 1, Model 2, Model 3, Model 4, Coco, CoCo2, CoCo3 and others)

Probably others were included.

Anyone that does retro programming on these systems knows it is an adjustment finding the quote above the '2' key.

Atari put a '@' with the 8 and shifted the '(' and ')' over one place.

Where did these companies come up with this format. Many decades of typewriters before them. This was much of their layout.



Standard II
Who did not use Standard I, but the Standard II? 

- Later Apple computers and Macintosh. 
- Later Atari computers (ST line), 
- Later Commodores (Amiga line), 
- all IBM computers and most compatibles like Tandy 1000 line. 
- Coleco Adam
- All Texas Instrument computers.  

IBM came up with this design, which may have influenced later keyboard's such as the Apple IIe's/Macintosh, the Commodore Amigas and Atari STs.

With the Apple IIe, Apple changed some keys around like the 2 key to be associated with @ like the IBM.



Texas Instruments TI-99/4A keyboard

What is the Standard II number line layout?

1=!, 2=@, 3=#, 4=$, 5=%, 6=^, 7=, 8=*, 9=(, 0=)

Somehow people were swayed into believing the IBM PC was superior to the computers of the late 80s.  Really was not true, but perception often wins.   As PC clones became the norm, so did this keyboard layout.


Saturday, March 28, 2026

80s BASIC



I'm currently reprogramming a game I did before called Seven/Eleven. The game looked a little dull so I'm remaking all the interfaces. This made me realize how much I enjoy some 80s BASICs over others.

Here is a list of my Favorite 80's BASICs that I use fairly regular, from favorite to least favorite.

1 TI-99 Extended BASIC

2 TI-99 BASIC

3 Tandy Extended Color BASIC 2.0

4 Tandy Extended Color BASIC 1.1

5 Tandy BASIC

6 Commodore BASIC V2

7 Atari BASIC

8 AppleSoft II BASIC

I should note that my first exposure to Tandy BASIC and Apple II BASIC was mostly as a teenager through public schools.

Why TI at the top? Most control in the easiest way. I really think if most companies and found someone better than Microsoft to develop their BASIC language, they could have been much better. What I like about Tandy and Commodore is that what ever they lack in BASIC features, they are quite hackable. It is possible to get to modes the physical computer could do that were not addressed in the BASIC environment.  Really, that is why Microsoft had the PEEK and POKE commands because there was so much they did not know how to translate into BASIC usefully.  And the way Microsoft used their graphics modes were so over complicated and stupid.  Really just limiting.  For the most part, programmers that understood the hardware capabilities and used assembler/machine language were really able to make the most of these computers.

It is not like TI-99 Extended BASIC was perfect as there were feature that were not addressed until the late 80s and early 90s with Super Extended BASIC by third party developers - but by that time most of the world had moved on from TI-99.  TI-99 popularity now is just mainly from people that remember fondly how much they enjoyed using TI-99 in the late 70s and early 80s.

Sadly the two most fun computers  TI and Tandy were the two most physically limiting computers.  TI-only made a 32K memory expansion for their computer that was shipped out with 16k.  TI also made their computers slower than need be by running code in video memory.  Tandy did not provide a dedicated 3 voice or better sound chip and a video processing chip that only handled 9 colors on both the CoCo 1 and 2. 

TI did make up in other areas though.  Best built in sprite capabilities, 16-bit processor, and S-Video output.  Tandy did make up for it with the easiest, but powerful, graphics and music programming commands. With some hacking past Microsoft's made limitations, graphically Tandy could put out some nice graphics with only 9 colors. 

Tuesday, May 6, 2025

comparison of 80s computers with BASIC



I have completed the simple version of the slot machine for the C64. But while programming this, I have learned that although it was the #1 selling computer of all time, it really was not as good as the computers that came out at the time. I have started documenting these short comings of the C64 BASIC.

First lets talk about variables. C64 could only have 2 character variables. I was stumped by this. This is a horrible flaw.

Here is a very simple demo with Atari XE computer and the TI-99/4A





Very simple and what one would expect. Here is the same code on the C64.

See what is going on here? All three variables are the same on the C64


So, if I make three variables; SB1, SB2, and SB3... to the C64, they are all the same variable - SB.
I can't believe this was OK for back in 1984. But in all fairness, Apple II computers had the same issue.
That said, I always hated programming on the Apple II back in the day and I don't remember this issue either.

The next issue was the limitation of the CHR$(X) that could be used on a single print line. this could be quite helpful with old BASIC. More than 5 on the C64, and the line would not PRINT. Luckily there is a work around for this. End that line with a ";" and then continue with another PRINT statement .


Above is a screen shot of Atari 8-bit computer showing that it can string along beyond what the C64 can.

My third beef with the C64 BASIC is that you can not add remarks on a DATA statement.  I'm pretty sure any other command that I found you can, but not on the DATA.  This is the one statement that could really use such a feature.

120 DATA 00,255,255,14,14,28,56,56

work around is just adding a REM on the line above.  But the whole idea of adding one cat'ed on the end is to make useful notes for each line that might need a comment. 

In all fairness the TI-99/4A will not allow REM at the end of the line

Friday, March 28, 2025

New site dedicated to DDD

This is a little update. As I continue writing software for D&D with the Dragons, Druids, and Dice project - I have created a dedicated web page for this project. 

https://mrgibson.com/dragons-druids-n-dice.php

Here I'm sharing code, screen shots, executables. 

My development for the C64 has be sparce as there are some pretty good development platforms for most systems, but not so much for the C64.  For physical hardware, I'm using a "TheC64" and there is not another real way for me to write and test the software easily.  

For the really old platforms, the TI-99 looks the best and mainly I understand development on it the most.

For Linux, Windows, and MacOS - I'm finding myself using tool sets that I have written before to perform many different types of tasks.  Really, by far, Linux is the easiest platform to develop with. 



Saturday, January 11, 2025

Ball Bounce - Saturday BASIC coding Exercise

Here is my Saturday programming exercise. 

X is the ball's X position
DX is the ball's X direction
Y is the ball's Y position
DY is the ball's Y direction

Positioning the ball on Atari computer
170 POSITION X,Y
175 PRINT CHR$(20)

Character 20 being the ball.

Positioning the ball on C64
170 POKE 1024 + X + 40*Y,81

81 being the ball.

Positioning the ball on TI-99
170 CALL HCHAR(Y,X,81)

Positioning the cross on the Apple II
161 PLOT X, Y
162 PLOT X-1,Y+1
163 PLOT X,Y+1
164 PLOT X+1,Y+1
165 PLOT X,Y+2

The TI uses Y,X coordinates where C64 and Apple use X,Y coordinates.

Atari and C64 both have predefined ball characters.  TI-99 and Apple does not.
I'm using character 81 as the ball on C64  - 20 on Atari
I'm rewriting character 81 and drawing it as a ball on the TI.
There is no simple middle ground with the Apple when doing graphic.
I simply slapped 5 blocks together with the plot command in low res
graphics.

Using TI-99 Extended BASIC, I could have shortened up the TI-99
code a lot, but wanted the code to work with both versions of 
BASIC.

For that matter, I could have shortened up all the BASIC code by
CATing code on the same lines, but I'm not a fan of that.  Too 
much and the code stops being easily readable.

I have been programming the far majority of my life.  
I still feel the same about these 4 platforms of the 80s.
TI-99 Extended #1, Atari 2nd, C64 3rd, and Apple II still sucks.



On to the Code!!

The Atari Code First

100 REM CLEAR SCREEN
110 PRINT CHR$(125)
120 GRAPHICS 0 : POKE 752,1
140 X = 1 
145 Y = 1
150 DX = 1 
155 DY = 1
160 REM DISPLAY BALL
170 POSITION X,Y
175 PRINT CHR$(20)
180 REM LINE 190 SLOW CODE DOWN
190 FOR T = 1 TO 50 
195 NEXT T
200 POSITION X,Y
205 PRINT " "
210 X = X + DX
220 IF X <= 0 THEN DX=-DX
225 IF X >= 34 THEN DX=-DX 
230 Y = Y + DY
240 IF Y <= 0 THEN DY=-DY
245 IF Y >= 22 THEN DY=-DY 
250 GOTO 160

The C64 BALL BOUNCE code!

100 REM CLEAR SCREEN
110 PRINT "{CLR/HOME}"
120 REM BG L-GREEN AND YELLOW BORDER
130 POKE 53280,7 
135 POKE 53281,13
140 X = 1 
145 Y = 1
150 DX = 1 
155 DY = 1
160 REM DISPLAY BALL
170 POKE 1024 + X + 40*Y,81
180 REM LINE 190 SLOW CODE DOWN
190 FOR T = 1 TO 30 
195 NEXT
200 POKE 1024 + X + 40*Y,32
210 X = X + DX
220 IF X <= 0 OR X >= 39 THEN DX = -DX 
230 Y = Y + DY
240 IF Y <= 0 OR Y >= 24 THEN DY = -DY 
250 GOTO 160

The TI-99 BALL BOUNCE code!

100 CALL CLEAR
110 CALL SCREEN(4)
120 CALL CHAR(81,"3C7EFFFFFFFF7E3C")
140 X = 1 
145 Y = 1
150 DX = 1 
155 DY = 1
160 REM DISPLAY BALL
170 CALL HCHAR(Y,X,81)
180 REM LINE 190 SLOW CODE 
190 FOR T = 1 TO 30 
195 NEXT T
200 CALL HCHAR(Y,X,32)
210 X = X + DX
220 IF X < 2 THEN 300
225 IF X > 31 THEN 300 
230 Y = Y + DY
240 IF Y < 2 THEN 320
245 IF Y > 23 THEN 320 
250 GOTO 160
300 DX =-DX
310 GOTO 160
320 DY =-DY
330 GOTO 160

Apple II PLUS BOUNCE code! 
It is fairly difficult in GR or HGR to make a ball.

100 REM CLEAR SCREEN
120 GR
140 X = 17 
145 Y = 5
150 DX = 1 
155 DY = 1
160 COLOR = 6
161 PLOT X, Y
162 PLOT X-1,Y+1
163 PLOT X,Y+1
164 PLOT X+1,Y+1
165 PLOT X,Y+2
180 REM LINE 190 SLOW CODE DOWN
190 FOR T = 1 TO 30 
195 NEXT T
200 COLOR = 0
201 PLOT X, Y
202 PLOT X-1,Y+1
203 PLOT X,Y+1
204 PLOT X+1,Y+1
205 PLOT X,Y+2
210 X = X + DX
220 IF X <= 2 OR X >= 37 THEN DX = -DX 
230 Y = Y + DY
240 IF Y <= 2 OR Y >= 37 THEN DY = -DY 
250 GOTO 160
Really, Atari does the best job. TI-99 is the easiest to program. Apple II is the "worsteth" of the four.

Wednesday, December 18, 2024

Small list of 80s era computer emulators: [updated 1/11/2005]

List of 80s era computer emulators on a web browser:


The TI-99/4A
https://js99er.net/#/

The Apple II
https://www.scullinsteel.com/apple2/

The Commodore C64
https://floooh.github.io/tiny8bit/c64.html
- or -
https://retrogamecoders.com/c64-emulator/
- or - 
https://virtualconsoles.com/online-emulators/c64/

The Commodore PET
https://retrogamecoders.com/pet-emulator/





Firewire!

Monday, December 16, 2024

More on some of the computers in my home lab.

I have some weird computers in my lab.  Here is My Android RCA Viking Pro sitting on top of my my HP file server.  The RCA is used mostly for testing.

 This is my first Apple Mac OSX computer I ever purchased that I still use today and is still working great.  I use it mostly for compiling software.

Wednesday, November 20, 2024

Adding 6th and 7th computer to my lab


New to the lab, but not new to the household is the Apple Mac. This Apple computer has not been used in a while, taken out of storage, and dusted off.


Also new to the lab, but not household, an RCA computer. I know nothing about this RCA, just found it in my old computer storage. At one time I must have purchased it for one of my daughters as it is hot pink. lol It is a "Viking Pro RCA"


So my lab now has three Windows boxes, RCA (Android Linux), TI-99/4A, Atari 400, and an Apple.


I have also added a backend ethernet network and file server to easily share files between the machines without being public and using up wi-fi resources.


Plus setting up a new KVM. the HP server, RCA, and Apple will share a large monitor while the TI-99, Atari, HP laptop and Lenovo laptop share a monitor.




Ford Racing Makes History with First Overall Victory and Podium Sweep at 2026 Rebelle Rally

Ford Racing Makes History with First Overall Victory and Podium Sweep at 2026 Rebelle Rally 4x4 Class Standings (Top Finishers) Rank ...