Jump to content

Photo

Assembly on the 99/4A


886 replies to this topic

#876 mizapf ONLINE  

mizapf

    River Patroller

  • 3,560 posts
  • Location:Germany

Posted Fri Mar 8, 2019 10:35 AM

I added a CRU bit test and a message saying "RELEASE ALPHA LOCK TO BEGIN PLAY".

 

Argh ... I always hated direct CRU queries, because this meant the program would not run on my Geneve. (Things got certainly better since I have emulation.)



#877 FarmerPotato ONLINE  

FarmerPotato

    Moonsweeper

  • 308 posts
  • Location:Austin, TX

Posted Fri Mar 8, 2019 11:23 AM

 

Argh ... I always hated direct CRU queries, because this meant the program would not run on my Geneve. (Things got certainly better since I have emulation.)

 

I thought of that, too.. I took that feature out of the Geneve GPL version (unpublished, whereabouts of floppy disk unknown)



#878 matthew180 OFFLINE  

matthew180

    River Patroller

  • Topic Starter
  • 2,621 posts
  • Location:Castaic, California

Posted Fri Mar 8, 2019 2:42 PM

I understand you're talking about the menus, not gameplay.

 

But for gameplay, I don't like joysticks. I have more dexterity in my fingertips on the keyboard. I resent that the Atarisoft games generally don't have keyboard controls.

 

 

Late games like Barrage and SpotShot let you push Fire instead of Redo. You only needed the keyboard for Back.

 

Please use WASD instead of the "arrow keys" (which require two hands in a very uncomfortable configuration).

 

And REDO / BACK are awful IMO, avoid them whenever possible.

 

TI created a model for software on the 99/4A based on bad design (or a lack of any design) that perpetuated the use of things like single-color sprites, multi-key inputs (REDO, BACK, etc.), explicit instructions for single key inputs "Press 'P' to play", bad fonts, and on and on.  When you compare 99/4A software with titles with systems like the ColecoVision, MSX1, and what people are producing today on the stock hardware, it is plainly obvious most developers did not even try very hard on the 99/4A.

 

Yes, please do follow the examples of systems like the MSX1 and NES for how to navigate and control games.  I guarantee you that none of the kids back then went running to the manual to figure out how to navigate the game menus and options, all without any keyboard at all.



#879 FarmerPotato ONLINE  

FarmerPotato

    Moonsweeper

  • 308 posts
  • Location:Austin, TX

Posted Fri Mar 8, 2019 3:31 PM

 

Please use WASD instead of the "arrow keys" (which require two hands in a very uncomfortable configuration).

 

And REDO / BACK are awful IMO, avoid them whenever possible.

 

TI created a model for software on the 99/4A based on bad design (or a lack of any design) that perpetuated the use of things like single-color sprites, multi-key inputs (REDO, BACK, etc.), explicit instructions for single key inputs "Press 'P' to play", bad fonts, and on and on.  When you compare 99/4A software with titles with systems like the ColecoVision, MSX1, and what people are producing today on the stock hardware, it is plainly obvious most developers did not even try very hard on the 99/4A.

 

Yes, please do follow the examples of systems like the MSX1 and NES for how to navigate and control games.  I guarantee you that none of the kids back then went running to the manual to figure out how to navigate the game menus and options, all without any keyboard at all.

 

 

Please allow the user to choose a keyboard layout?

 

I suppose by two hands you mean left hand on E+S, right hand on X+D.  I have seen people adopt this. It strikes me as odd when three fingertips is enough for me.

 

I have always used my right hand thumb on X, middle finger on E, index finger on S+D. My index finger can move most quickly of all to switch between S and D.

 

I am not a big fan of WASD. If I use the middle finger for both W and S, that muscle is slower to finish the movement (tendon causes three joints to contract) than the other movement in ESDX .WASD feels uncomfortable because my middle finger is above average length.

 

 

That said, we all have idiosyncratic wiring between brains and fingertips. 

 

Also, hjkl. 


Edited by FarmerPotato, Fri Mar 8, 2019 3:36 PM.


#880 Airshack OFFLINE  

Airshack

    Dragonstomper

  • 954 posts
  • Location:Phoenix, AZ

Posted Fri Mar 8, 2019 10:43 PM

I resent that the Atarisoft games generally don't have keyboard controls.


This subject probably deserves its own thread.


Sent from my iPhone using Tapatalk Pro

#881 RXB OFFLINE  

RXB

    River Patroller

  • 3,550 posts
  • Location:Vancouver, Washington, USA

Posted Sat Mar 9, 2019 11:16 AM

 

Please use WASD instead of the "arrow keys" (which require two hands in a very uncomfortable configuration).

 

And REDO / BACK are awful IMO, avoid them whenever possible.

 

TI created a model for software on the 99/4A based on bad design (or a lack of any design) that perpetuated the use of things like single-color sprites, multi-key inputs (REDO, BACK, etc.), explicit instructions for single key inputs "Press 'P' to play", bad fonts, and on and on.  When you compare 99/4A software with titles with systems like the ColecoVision, MSX1, and what people are producing today on the stock hardware, it is plainly obvious most developers did not even try very hard on the 99/4A.

 

Yes, please do follow the examples of systems like the MSX1 and NES for how to navigate and control games.  I guarantee you that none of the kids back then went running to the manual to figure out how to navigate the game menus and options, all without any keyboard at all.

I absolutely hate WASD instead of arrows. They are never lined up evenly on almost any keyboard.

The E is always off center to right of S & D keys, the X is directly below like it should be,

 

I like the ARROWS as they are exactly lined up like you would expect. 

 

Also I hate the Number Keys  and instead use Number Pad keys for numbers as you do not have to look to hit the right key.

Additionally you can hit Num Lock and get another set of keys.

 

I have small hands with short fingers so most keyboards is hard for me to type on.



#882 whicker OFFLINE  

whicker

    Space Invader

  • 19 posts
  • Location:Wisconsin

Posted Sat Mar 9, 2019 1:49 PM

I absolutely hate WASD instead of arrows. They are never lined up evenly on almost any keyboard.

The E is always off center to right of S & D keys, the X is directly below like it should be,

 

Put your pinky of your left hand on the "A" key and place each of your following fingers to the right on the home row keys with your pointer finger ending up on the "F" key. The side of your thumb rests on the spacebar.

To hit the "W" key (up), extend your ring finger naturally up from the "S" key, and your joints will naturally guide it to the upper-left direction there.

 

Other natural movements are moving your pointer finger from the "F" key up to the "R" key or down to the "V" key.

Using the spacebar for something precise like jumping feels really natural with this hand positioning.

 

Part of the comfort of using WASD has to come from instant onscreen feedback (high framerate). Otherwise I agree it is more confusing than a cardinal direction layout.



#883 Airshack OFFLINE  

Airshack

    Dragonstomper

  • 954 posts
  • Location:Phoenix, AZ

Posted Sat Mar 9, 2019 3:41 PM

“Put your pinky of your left hand on the "A" key and place each of your following fingers to the right on the home row keys with your pointer finger ending up on the "F" key. The side of your thumb rests on the spacebar.
To hit the "W" key (up), extend your ring finger naturally up from the "S" key, and your joints will naturally guide it to the upper-left direction there.
 
Other natural movements are moving your pointer finger from the "F" key up to the "R" key or down to the "V" key.
Using the spacebar for something precise like jumping feels really natural with this hand positioning.”

^^^^ I can think of no better illustration as to why Atarisoft games generally do not have keyboard controls.


Sent from my iPhone using Tapatalk Pro

Edited by Airshack, Sat Mar 9, 2019 3:41 PM.


#884 FarmerPotato ONLINE  

FarmerPotato

    Moonsweeper

  • 308 posts
  • Location:Austin, TX

Posted Sat Mar 9, 2019 4:22 PM

Hi all,

 

Please take general discussion of using keys to  TI-99/4A Computers : Game controls: keyboard ESDX, WASD, joysticks

 

Talk about assembly programming and KSCAN here.



#885 RXB OFFLINE  

RXB

    River Patroller

  • 3,550 posts
  • Location:Vancouver, Washington, USA

Posted Sun Mar 10, 2019 11:21 AM

 

Put your pinky of your left hand on the "A" key and place each of your following fingers to the right on the home row keys with your pointer finger ending up on the "F" key. The side of your thumb rests on the spacebar.

To hit the "W" key (up), extend your ring finger naturally up from the "S" key, and your joints will naturally guide it to the upper-left direction there.

 

Other natural movements are moving your pointer finger from the "F" key up to the "R" key or down to the "V" key.

Using the spacebar for something precise like jumping feels really natural with this hand positioning.

 

Part of the comfort of using WASD has to come from instant onscreen feedback (high framerate). Otherwise I agree it is more confusing than a cardinal direction layout.

Again my PINKY will not reach the A key at same time as other fingers are on S & D keys.

And there is a half inch gap between my index finger and F key, 

 

In order to type I have to constantly crank my hand left and right. I can type 60 words a minute, but it looks odd for a reason.

 

The lay out of keys was not for typing it was for using a MANUAL TYPE WRITER as it took infinite more power back then, but that pattern stuck.

 

Because the TI99/4A keyboard is shrunk I can type faster on it then normal computer keyboards.


Edited by RXB, Sun Mar 10, 2019 11:24 AM.


#886 FarmerPotato ONLINE  

FarmerPotato

    Moonsweeper

  • 308 posts
  • Location:Austin, TX

Posted Mon Mar 11, 2019 9:29 PM

Back on topic:

 

This code works on my 4A, but it assumes a GROM address for the char defs. Is there a better way to look up the char defs? Are there different GROMs out there?

* copy 7 byte grom char defs to vdp.
* assume 06b4 is the char table (seen in classic99 4A grom)
* they are 7 bytes per char so add a 0 after each 7 bytes
* R0 VDP address
* ----
* R1 scratch
* R2 scratch
chara:
	ori r0,>4000
	swpb r0
	movb r0,@VDPWA
	swpb r0
	movb r0,@VDPWA
	li  r1,>06b4
	movb r1,@GRMWA
	swpb r1
	movb r1,@GRMWA
	li   r1,>5f                ; number of char defs
chara1:
	movb r1,@VDPWD             ; insert a zero byte
	li   r2,7                  ; bytes per char def
chara2:
	movb @GRMRD,@VDPWD
	dec  r2
	jne  chara2

	dec  r1
	jne  chara1
	rt

Edited by FarmerPotato, Mon Mar 11, 2019 9:30 PM.


#887 sometimes99er OFFLINE  

sometimes99er

    River Patroller

  • 4,222 posts
  • Location:Denmark

Posted Mon Mar 11, 2019 11:02 PM

 

Back on topic:

 

This code works on my 4A, but it assumes a GROM address for the char defs. Is there a better way to look up the char defs? Are there different GROMs out there?

* copy 7 byte grom char defs to vdp.
* assume 06b4 is the char table (seen in classic99 4A grom)
* they are 7 bytes per char so add a 0 after each 7 bytes
* R0 VDP address
* ----
* R1 scratch
* R2 scratch
chara:
	ori r0,>4000
	swpb r0
	movb r0,@VDPWA
	swpb r0
	movb r0,@VDPWA
	li  r1,>06b4
	movb r1,@GRMWA
	swpb r1
	movb r1,@GRMWA
	li   r1,>5f                ; number of char defs
chara1:
	movb r1,@VDPWD             ; insert a zero byte
	li   r2,7                  ; bytes per char def
chara2:
	movb @GRMRD,@VDPWD
	dec  r2
	jne  chara2

	dec  r1
	jne  chara1
	rt

 

http://atariage.com/...-2#entry3825145






0 user(s) are browsing this forum

0 members, 0 guests, 0 anonymous users