Jump to content
  • entries
    46
  • comments
    9
  • views
    48,364

About this blog

Diamond GOS programming(mostly)

Entries in this blog

I think my Diamond Daze Is Over

I have worked long and hard on a NTS-1 Patch Editor to make it operate with the Diamond GOS.  But I fear that it will never work on my system.  Strange things started happening as the last of the routines were being worked on.  It's taken me a couple of months to realize that the drive to continue working with Diamond was at an end.   Over time there were bugs showing up in this compiled program in an ever-increasing frequency.  These were problems with code that had already been debug

k-Pack

k-Pack in MMS

NTS-1 Patch Editor Program 80% complete

After the MIDI Keyboard started working, the change channel, Radio buttons and adjusting the control values quickly followed.  These were assembled into TEST15.APP and the video was recorded.   The NTS-1 arpeggiator was turned on and the controls were adjusted.  The control values were sent by moving the mouse pointer into the slide area.  While the mouse was over the area,  the value was displayed above the slide.  While the button was pressed, the value was sent to  the NTS-1 and dis

k-Pack

k-Pack in NTS-1

NTS-1 Patch Editor Program Progress

It's been 2 months since my last entry and I want to reassure those interested that progress is being made.  But slowly.   The display has been designed, the info dialog can be viewed, the event program has been debugged and the keyboard can be used to play notes.     Note: audio was recorded from the NTS-1. Silence - until the keyboard icon is clicked.   Already, the ability to change the MIDI channel from the dropdown menu has been tested and debugg

k-Pack

k-Pack in NTS-1

Adjusting CC Values for the NTS-1 Patch Editor - Part 04

Once the radio buttons were shown to be a way to pick the MIDI controller to be adjusted, a demo of a method to make the adjustments was attempted.  The objective was to use the mouse so that it could be moved to adjust the value and click to set the controller value. I also wanted the option of changing the controller value in real time as the value was changed.   As it turned out, it will be a simple matter to implement…. next time.     A touch area is drawn on t

k-Pack

k-Pack in NTS-1

Radio Buttons for the NTS-1 Patch Editor Part 03

I seem to remember that setting up radio buttons using Visual BASIC 4 was a point, click and fill in the properties table procedure.  Not so easy with Diamond GOS.  Programming Diamond is a lot like the early days of the Atari programing, when the only way to know if an algorithm would work was to try it, rather than searching the internet for an error free method.  Add up the frustration from (what I don't know about the (Atari hardware + MAC-65 + assembly language + Diamond GOS)) and you get t

k-Pack

k-Pack in NTS-1

Diamond MIDI Keyboard  / NTS-1 Patch editor Part 02

After playing with RND(NTS-1), it became apparent that the patch editor is going to need some way of sending MIDI NOTEON and NOTEOFF commands from the computer.  I tried to use characters to draw a horizontal keyboard, 2 keys per character. I  was not happy with the visual results.   Eventually the characters were rotated and used to create a keyboard Icon where the keys were orientated vertically. The improvement  was due more to its orientation then it was due to it being displayed a

k-Pack

k-Pack in korg

RND(NTS-1) V1.0 Random Patch Generator

I haven't abandoned the Diamond - NTS-1 patch editor project(yet). A Test of a display concept looked reasonable and thought if a set of random numbers for the CC# were created and placed on the screen they could be sent to the NTS-1 without much effort. All worthwhile routines to work out the bugs. I now have a platform to develop a method of adjusting the CC data before getting back to the official  patch editor.   So plug in your Korg NTS-1 into your MIDI interface, put your Diamond

k-Pack

k-Pack in MIDI

Patch Editor for NTS-1 Project - Part 01

Getting Started:   Been thinking long and hard about programming a patch editor for the Korg NTS-1 synth.  There are patch editors out there, but none will output the Continuous Controllers (CC#) as program change commands used in the MIDI MUSIC SYSTEM (MMS) voice file format.   Since I'm aware that I may be the only person to use this program, I have decided to write the program in assembly (MAC65) to run using the Diamond GOS 3. I should be able to write the code in stages

k-Pack

k-Pack in Korg

A8, Diamond GOS, M: driver, and MIDIMAX

Ever wonder if you could output MIDI data to a MIDI synthesizer from your Diamond GOS equipped ATARI 8 bit through a MIDI MAX compatible interface? I didn't think so but I had to ask.  And the answer is:   YES - {video removed}   I came across a MIDI device handler(M:) and blogged about the adventure of writing a test program in ATARI BASIC.  I have had the time to try it out with a Diamond GOS program written in machine code using the MAC65 assembler.  It seems that the

k-Pack

k-Pack

Diamond MULTIPLY(39) Macro

The MULTIPLY function for Diamond GOS is stated as: MULTIPLY (39) - Word sized multiply(please note overflow error are not detected) Receives: W5 - Multiplicand 1 W6 - Multiplicand 2 Returns: W7 - Result As with the DIVIDE macro, the original macro received the numbers when calling it. It was changed to accept an address of the numbers and the numbers are then copied into W5 and W6. Original macro 8500 ; 8510 .MACRO MULTIPLY 8520 LDA # <%1 ;MULTIPLICAND

k-Pack

k-Pack

Diamond Divide Macro (40) Mod

While programing dMetronome I had to learn a few things. How to divide the number of DLIs in a minute by the number of DLIs to get beats per min. I finally got to the point where I could use the Diamond Macro Divide to handle the division and as long as I kept the answer to one byte I was fine but there were many tribulations along the way.   My first revelation was that the macro needed the numbers to be passed to them. Many of the d-macros pass the address pointer to W0 to W7 but not the d

k-Pack

k-Pack

dMetronome - tick tick tick tick tick………..

Every computer needs a metronome program but only a few Atari8 owners have the Diamond GOS to run this one and even fewer would want to build the simple hardware to hear it.    {video removed}   It may have been easier to write this one in BASIC but I wanted to get back into Assembly and thought a metronome based on the software timer example in De Re Atari would be a good place to start. The original idea involved pulsing the Cassette Motor Control(CMC) pin on the SIO, then

k-Pack

k-Pack

Diamond GOS PARAPRNT macro fix

Programing Axiom - The solution for every programming problem becomes obvious only after the solution has been found.   The PARAPRNT(2) and SYSDRAW(44) Diamond functions are both used to print text or font elements to the screen. The SYSDRAW is fast because it is a no frills text display function. If you have the time, the PARAPRINT allows the use of control characters in the text object to create bold, italic, outline, underline, inverse, light, mirror, and reverse characters. You can al

k-Pack

k-Pack

Diamond GOS Menu Bar Reference Sheet

If you found the dialog reference sheet of interest, I'm sure this reference for creating a menu bar will be just as interesting.   Menu Bar reference sheet.pdf   This next Diamond project was going to be written in BASIC. When I looked at all the information tables, pointers and data strings needing to be defined as BASIC string variables, assembly language seemed to be the way to go. Especially since my assembler is the MAC/65. The Diamond Develop disk has a library with MAC/65 macros

k-Pack

k-Pack

Diamond GOS Dialog Reference Sheet

When starting a Diamond project, I have a tendency to utilize a lot more design time before sitting down in front of a computer. Sketching out displays, icons and menus seem to consume a lot of time but having this all worked out before committing it to code helps.   (Random Thought - Remember going into the office supply store and finding a whole section of graph paper. This time I had to ask the clerk where it was. He pointed me toward the paper section and said, "Its next to the carbon pa

k-Pack

k-Pack

CX22 Trackball mouse

Found an article within a PDF of the Status Newsletter on archive.org. It explained how to rewire a CX-22 Trackball for use as an ST-mouse for an A8-Diamond GOS based system or the ST. I have been using a mouse from Best Electronics (model CBM1) for quite some time and should have a backup. I made the modifications to my CX-22 as explained in the article and it worked the first time. Diamond has been configured to use STMOUSE2.DRV for the mouse driver and worked just as well with the modified

k-Pack

k-Pack

Joystick Port 1 Output Control Accessory for Diamond GOS

At some point during the writing of the last blog entry it dawned on me that accessories could be written to toggle the logic output for the joystick port from within any Diamond application that uses the drop down menu. Six machine language programs were developed to do just that.   JSP1OUT.APP Application to set the joystick port 1(JSP1) to output. JSP1IN.APP Application to set JSP1 for input. JSP1P1.ACC – JSP1P4.ACC Accessories to toggle the pins on and off when loaded during boot up.

k-Pack

k-Pack

Can I ………?

ANSWER: Yes, you can use an Atari mouse plugged into port 1 while using the digital pins on port 0 as outputs while operating in the Diamond GOS environment.   The answer was needed because I’ve been thinking about writing the control software for some hardware projects to work under the Diamond GOS. As a test, this short program was written to randomly set the outputs to control the LEDs in the Joystick Port Logic Box (JPLB). (See “Out of the Pack” Blog 4/20/2015)   This BASIC program sets

k-Pack

k-Pack

FONTEDIT.APP – A closer look at disk #037

I haven’t found the program I’ve been searching for but I did find a disk with my favorite Atari font editor and the Diamond Font Editor. This was a mystery. I never found Diamond’s font editor to be very useful but there it was among the *.FNT, *.DFT and FONT.BAS.   A *.FNT file is likely to be files containing the data for the Atari 8X8 screen font. The FONT.BAS turned out to be the Create-A-Font editor by Vince Erceg. It was copyrighted 8/2/83 and first appeared in Analog #16, February

k-Pack

k-Pack

What’s on Disk #003

There is a big banker box about ¾ full of floppy disks for the Atari8bit sitting next to my hobby bench. They are from several systems that were purchased just before putting my 8bit equipment into storage. I’m starting on a quest to see if their content is of any interest.   I was waiting to get an SIO2SD but the label glue is drying out and the labels don’t always fall into the sleeves with the disk. I guess that is part of what’s going to make this interesting.   Disk #001 was an unla

k-Pack

k-Pack

LMOUSE.ACC a mouse of a different shape

I’m not sure why anyone would need to change the default mouse shape on the desktop but if you can do it in Windows maybe an attempt should be made for Diamond GOS. I choose this project because it has been 20 years since the last accessory was written. This was the first idea that came to mind and then I stopped thinking. Plus, I’ll be 80 if I wait 20 years for my next one. This documentation should help.   The Diamond Develop User Manual-Third Printing (DDUM3) contains most of the informati

k-Pack

k-Pack

BASLO211.APP – Diamond Desktop to BASIC

This is the last of the Diamond Programs I wrote in the wayback. I wasn’t going to mention this one because the method of loading an Atari BASIC program from the desktop does not work for all BASIC programs and I’m not sure why. But… because it works for the majority of programs and the goal of any GOS is to reduce the use of the keyboard as much as possible, here it is.   BASLO211 is based on the program in the article “Automate Your Atari”, Compute!, January 1983. The program writes

k-Pack

k-Pack

VIEW83.APP – GR.8 viewer for diamond

Summer is coming to a close and soon it will be too cold to ride the bicycle. I’m running out of old programs to post and look forward to writing new ones.   When I wrote this one back in 1990 I had a lot of hiRes pictures that were produced using Graphics Master and Map Ware (APX). Both these programs (and a lot more) save pictures in a 62 sector format. It is saved screen memory without compression.   The HiRez is also used for the Diamond Desktop. So knowing how to load ba

k-Pack

k-Pack

MIXMATCH.APP another game for Diamond

I think my son starts worrying about me when I get out the old Atari Computer. This time he’s trying to lure me away from the “Atari side” with a Windows 8 tablet computer. Making the jump from NT to Windows 8 and getting use to the new USB keyboard would make anyone miss the good old days. I do long for the day when a system restore was a matter of turning off the computer and reinserting the cartridge.   Just yesterday I had 41 updates. Remember the days when you had to get it done right

k-Pack

k-Pack

TILES212.APP - old game updated for Diamond GOS

I was waiting for the Diamond GOS APP store to open before I posted this game. I finally figured it wasn't going to happen - soon. So here is the Tiles game that will give you something to play while we wait.     As you can see, I got out the old Zenith Data System monitor and removed the Windows NT computer from my desk. I like the color green. It may have been a better monitor for programing then the color TV but I get a better photo off the LED screen. I took a movie of a game. The speed

k-Pack

k-Pack

×
×
  • Create New...