Jump to content

lucien2

Members
  • Content Count

    296
  • Joined

  • Last visited

Community Reputation

148 Excellent

About lucien2

  • Rank
    Moonsweeper

Profile Information

  • Gender
    Male
  • Location
    Switzerland

Recent Profile Visitors

6,292 profile views
  1. Submission: Mastermind Platform: XB Written by: Lucien Baumann 1 RANDOMIZE :: CALL CLEAR :: CALL CHAR(35,"0000001F10101010000000FF00000000000000F80C0C0C0C0C0C0C0C0C0C0C0C") :: F=0 :: CALL CHAR(39,"0C0C0C0CFCFC000000000000FFFF0000") 2 CALL CLEAR :: CALL CHAR(41,"101010101F0F00001010101010101010") :: IF F=0 THEN DISPLAY AT(22,1):"Guess a number of 4 digits from 1..6. Clues: 1st=In pos2nd=Wrong pos." 3 DISPLAY AT(4,10):"#$$$$$$$$%" :: CALL VCHAR(5,12,42,12) :: CALL VCHAR(5,21,38,12) :: DISPLAY AT(17,10):")(((((((('" :: DIM A(4),B(4),E(4) :: FOR I=1 TO 4 4 A(I)=INT(RND*6)+1 :: NEXT I :: Y=5 :: ON WARNING NEXT :: CALL CHAR(91,"101010101F10101000000000FF0000000C0C0C0CFC0C0C0C") 5 ACCEPT AT(Y,11)SIZE(4):N :: DISPLAY AT(Y,11)SIZE(4):STR$(N) :: J=1000 :: FOR I=1 TO 4 :: B(I)=INT(N/J) :: N=N-B(I)*J :: J=J/10 :: E(I)=A(I) :: NEXT I :: C=0 :: D=0 6 FOR I=1 TO 4 :: IF E(I)=B(I)THEN C=C+1 :: B(I)=0 :: E(I)=10 7 NEXT I :: F=1 :: CALL HCHAR(22,1,32,96) :: FOR I=1 TO 4 :: FOR J=1 TO 4 :: IF E(I)=B(J)THEN D=D+1 :: B(J)=0 :: E(I)=10 8 NEXT J :: NEXT I :: DISPLAY AT(Y,16)SIZE(1):STR$(C) :: DISPLAY AT(Y,18)SIZE(1):STR$(D) :: Y=Y+1 :: IF Y=15 THEN 9 :: IF C<>4 THEN 5 9 M=0 :: J=1000 :: FOR I=1 TO 4 :: M=M+A(I)*J :: J=J/10 :: NEXT I :: DISPLAY AT(Y,10)SIZE(10):"[\\\\\\\\]" :: DISPLAY AT(Y+1,11)SIZE(4):STR$(M) 10 CALL KEY(5,K,S) :: IF S=0 THEN 10 :: GOTO 2 MASTERMIND.dsk
  2. Standby, like all my hobby programming projects. I don't have a lot of free time with two little boys of 2 and 4 years old. When they sleep, I'm just too tired. It was maybe 5th on my TODO list, now it just went 3rd or 2nd. There are at least two people here who did bank switching with GCC, so I have a lot of available memory for an A.I. player.
  3. Someone told me the link to the cygwin binary of GCC is dead. Here is a new one: http://lb3.one/public/TI99-GCC-1.10.zip. It's not the latest version of GCC, you should add a warning or remove it.
  4. Even if FIAD Extractor was downloaded 10 times, I don't think it had a lot more than one regular user . If he doesn't complain, I don't think I will add this feature.
  5. FIAD Extractor does not work because it supports only V9T9 DSK images, BOX7033.DSK is a PC99 DSK image.
  6. *Canfield Solitaire* Language: Assembly Size: 3732 bytes 32k RAM not needed CANFIELD.zip
  7. I am. My game is finished and I still have 1000 bytes free (simple game with minimalist design). I'll add some online help.
  8. GPL You can maybe find the bullet in the system GROMs, but it's undocumented. It uses 3 bytes of code, but it takes 50 CPU clock ticks.
  9. Wrong. There were two new games entirely written in GPL in the last few years by me and Davvel. http://atariage.com/forums/topic/259623-ti-994a-break-free/?do=findComment&comment=3642722 http://atariage.com/forums/topic/224567-2048/?do=findComment&comment=2973710
  10. You can do that with the Classic99 debugger: http://atariage.com/forums/topic/207330-classic99-cpu-bug/?view=findpost&p=3134616 It does not disassemble the instruction, but if you have a GPL listing with the addresses of each instruction, thats no problem.
  11. Same here on Cygwin 1.7.9 (2011). It works on Cygwin 2.9.0 (latest version).
  12. Here is one: http://atariage.com/forums/topic/207087-coding/page-1?do=findComment&comment=2670337, in "sokoban asm.zip". The comments are in french. If you are interested in using it, I could isolate it from my library. Arrows, insert, delete, clear and multiline (4 lines) are implemented. The routine is in "LIB" file, it's called "INPUT". The return value is in "INPSTR", the first byte is the string length. If you want to watch it running, load the ea5 file "SOKOBAN" and press "L".
  13. In the assembly side, you have to put an address table at a fixed address (see table below, from GPL manual). Like this >6010 Sub1 address >6012 Sub2 address etc. Sub1: do something LWPI >83E0 RT Then in GPL, to call Sub2: XML >71 (7 = table at >6010, 1 = 2nd routine) Here's the table 2 = >2000 7 = >6010 8 = >6030 9 = >7000 F = >8300
  14. It pads and concatenates the objects, but it only uses the grom address from the command line, like this. "gromcart 6000 srxb3.o 8000 srxb4.o RXBG.bin" Here's the source (in module.vb)
×
×
  • Create New...