Jump to content
IGNORED

Password entry using only default 6 digit score


Gemintronic

Recommended Posts

PW2VARS.thumb.jpg.69415df8e67cf5a1f31d59a6ce7455ea.jpg

 

Too ugly for a tutorial so let's call this a show and tell.  When the demo starts it generates a valid password and leaves it in the data entry section.   This code lets you re-load 2 full variables using the score for password entry.  You can even use the title screen kernel score display instead of the drawscreen command.

 

Use LEFT and RIGHT to change "cursor" position.  Use UP and DOWN to increment or decrement current position value.  Moving all the way left and pressing FIRE reboots.  Moving all the way right and pressing FIRE attempts to validate password and restore save1 and save2 variables.

 

Usability features:

* Blinking "cursor" made of score character value $F.  Seems to work even with fonts that have no A-F like the standard score_graphics.asm

* Animated, color changing leftmost position.  Press FIRE to reboot game

* Rightmost position flashes entire password green.  Press FIRE to validate data entry

* Color cycling password validation screen that displays 2 reconstituted save game variables 

 

Security features include:

* 2-bit checksum

* Hard coded values added to help mask original save variables

* Bit re-ordering for further obfuscation (with extra drawcreen calls to prevent going over cycle)

* Usability tweaks to balance data entry ease and lightly hindering manual password hacking

 

Not much more I can think of to make it more secure with just a puny 2-bit checksum and poor math skills.  Not having score graphics for A-F makes me uneasy.  For my own use I will probably continue using hand modified score_graphics.asm files with custom A-F entries.

 

 

pw2vars.bas pw2vars.bin

  • Like 4
Link to comment
Share on other sites

  • 2 weeks later...

Here's a version using RevEngs Title Screen kernel.  It also uses 6 less variables and no defines.  In the old version we use 6 variables to hold the characters to copy into the score.  Now the 3 internal score variables are directly altered as 6 nybbles.

 

Basically, I went on a deranged spree reducing defines as I was reaching the old 50 define limit in my current project.  Didn't read the bB release notes that say that limit has been bumped up to 500.  So, I guess we can use 500 constants and now 500 defines?

 

pw2vars04.baspasstskernel.zip

 

pw2vars04.thumb.png.b5717ee23f218fe9dc1625d5e0a23a85.png

  • Like 2
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...