Jump to content
IGNORED

I have a project I want to do, but I need some information first.


Omega-TI

Recommended Posts

attachicon.gifOMEGA.dsk

 

If this doesn't inspire you to finish the program, nothing will. :)

 

 

Thanks Gazoo, I promise take a look next week when I have some more time, but seriously I haven't a clue about where to start or what to do when it comes to ASSembly language. When I see cryptic stuff like this...

 

gallery_35324_1027_18273.jpg

 

... my eyes just glaze over and my mind goes numb as it means absolutely nothing to me.

 

#Micdrop

 

 

All you gotta do is pull out the EA manual and read Tony's comments... :)

 

Oh yeah, some of my college text books were smaller than the E/A manual! Seriously, with my memory issues, lack of time. lack of basic understanding...

 

 

Et voila. An easy crash introduction to assembly for ya, Kevan!

 

Groan, I promised Gazoo I'd take a look, I'm seriously doubting I'll comprehend anyone of it....

Link to comment
Share on other sites

 

Thanks Gazoo, I promise take a look next week when I have some more time, but seriously I haven't a clue about where to start or what to do when it comes to ASSembly language. When I see cryptic stuff like this...

 

gallery_35324_1027_18273.jpg

 

... my eyes just glaze over and my mind goes numb as it means absolutely nothing to me.

 

 

Oh yeah, some of my college text books were smaller than the E/A manual! Seriously, with my memory issues, lack of time. lack of basic understanding...

 

 

 

Groan, I promised Gazoo I'd take a look, I'm seriously doubting I'll comprehend anyone of it....

 

The code you quoted is part of the standard utilities that write to the screen, look for files on peripherals, look for keys, etc. I pretty much just copy that stuff into every program I write so I can use it when needed. You don't need to understand that part, just use it.

 

The code earlier in the file that's commented is the part where you tell the utilities what to do, and is much easier to understand.

 

Gazoo

Link to comment
Share on other sites

Matthews assembly thread is a phenomenal resource. Based on the conventions in that thread, I was able to do quite a bit of assembly stuff when I applied myself.

 

Understanding what the registers are (R1,R2...R13) and how they are used to accomplish tasks is a really good place to start. :)

 

BTW, the EA manual is not a tutorial for beginners. I learned that the hard way. :) but guess what... We have (in the dev rec thread) a copy of Lottrups book.... Which is the bees knees, IMO.

 

Try writing a HELLO, WORLD! program first. It is easy and fast, and anyone can do it. I have tried dozens of programming languages over the years (never really mastered any) and I always do the HELLO, WORLD! program to see how I like the language.

 

I remember when TheCodex got me working in Java. I liked the UI of Eclipse alot.

 

Just try it... Learn how loops work, how to manipulate registers. I'm terrible at assembly, but if I needed a routine or a small program, I could whip something up.

 

And so can you, buddy.

Link to comment
Share on other sites

Simple delay loop. :)

 

      DEF START

START LI  R1 1000
TOP   DEC R1
      CI  R1 0
      JNE TOP
      END
(L)oad (I)mmediate Register 1 with "1000"

 

DECrement the value in R1 (reduce by "1")

 

©ompare (I)mmediate the value in R1 to "0"

 

(J)ump if (N)ot (E)qual to TOP (Loop)

 

If the values are the same (R1 and "0") then END

 

 

It has been a while, so I might be a little off, but you can see that it is very legible and understandable. :)

 

It is not harder than BASIC, it just takes more time and a few more instructions. You are completely at the helm in 9900, and you can run your program off the bridge. You can also drive alot faster. :)

 

To be "good" at it, you need an understanding of the memory map... Something I lack (which is why I am not a very good assembly programmer)...

 

But for basic stuff, assembly is really just broken-down BASIC. You're BUILDING the CALL CLEARs and the CALL HCHARs by hand. :) No limitations. Truly awesome.

Link to comment
Share on other sites

Well, there was a way cooler way to do this. :) I just couldn't resist.

 

Having been pretty intimate with the PGRAM DSR, it seemed to be a better idea to just modify the code it uses for CALL PTIME. That way the clock can be displayed as it's running. You only need to change it if you choose to, otherwise you can run BOOT or quit.

 

Since this code is lifted from the PGRAM DSR, it won't run on an emulator. You need a real CORCOMP or PGRAM clock for it to work, else you will find yourself viewing the TI title screen. ;) It certainly was a lot of fun coding this on a PC and running back and forth to the TI to test the code. :(

 

Dsk file is attached. Program name is SETCLOCK. BOOT is included on the disk with a menu entry for DSK1.SETCLOCK so you can go round and round in circles if you want.

 

The path 'DSK1' is in the first sector of SETCLOCK if you want to change the disk number. If you want to change it to a subdirectory on a hard drive and lengthen the pathname, contact me and I'll make a custom version for you.

 

SETCLOCK.dsk

 

Have fun,

 

Gazoo

 

 

  • Like 1
Link to comment
Share on other sites

Wish I still had my Triple Tech card. :) This is pretty cool!

 

I wonder, since that new new speech interface of Greg's is so small, even with the speech attached, would there be enough room (height-wise) for small FPGA clone of the stand-alone CorComp clock to plug in too? Could it even be done?

 

True, it would only be a 'Double Tech Card', but really, now days who would use the 64K printer buffer anyway?

Link to comment
Share on other sites

SETCLOCK.dsk

 

Here's an alternative to the SETCLOCK program. It's been renamed BOOS, and altered a little. Put it in the same directory or on the same disk that you keep BOOT. When it is loaded, the header tells the loader to load the next program in the chain, so it loads BOOT and BOOU. When selection #2 is made, it jumps right into BOOT, which is already loaded.

 

Gazoo

Edited by Gazoo
  • Like 1
Link to comment
Share on other sites

That's pretty freaking SLICK there Gazoo! I copied BOOS over to my main program disk and it works great.

I had a small issue with the version of BOOT you had on that disk though, but it did not occur with my version.

 

Well, I have start getting ready to go. L8R!

 

P.S. Awesome way to think outside of the box! :thumbsup: :thumbsup: :thumbsup:

Link to comment
Share on other sites

  • 2 months later...

Gazoo,

Your program is fantastic, I like it as much now as ever and it does get quite a bit of use actually.

 

post-35324-0-74258000-1429338431_thumb.j

 

Now since you like 'a challenge', from time-to-time, and seem to be an expert at adding AWESOME features to already great software, it occurred to me that there is room for 'one more' feature. :) So if you ever get bored, I have a possible idea....

 

Replace option 2 with "Sync PC Time" Granted this might be difficult as it would have to obtain the time from somewhere. One method to do this would be to have a small PC program running in the background that could be accessed via the UDS-10 in Telnet mode, (preferably with the same settings one uses for the BBS). It would give the PC's time to the TI and your program would do the rest.

 

Anyway, that was just an idea that popped into my head as I was using your program this morning.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...