News:

Printed Amstrad Addict magazine announced, check it out here!

Main Menu
avatar_CPCIak

Amstrad Action TYPE-IN PROJECT

Started by CPCIak, 09:56, 03 January 10

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

robbarton

Uploaded AA71 today - 11 issues left  :)

TFM

TFM of FutureSoft
Also visit the CPC and Plus users favorite OS: FutureOS - The Revolution on CPC6128 and 6128Plus

AMSDOS

Quote from: robbarton on 21:21, 21 September 16
Uploaded AA71 today - 11 issues left  :)

Sadly I think I only typed-in that Thro' The Wall, which turned out to be out of the 6128 Manual, it might of been originally out of an early ACU when it was called CPC464 User, I only really recall that from the Bomber program though.
That was the issue which came with the Devpac assembler on the covertape, so was able to start playing with the example assembly program, so had more fun playing around with that, than with Technician Ted.

Later on when I got a 6128 that Bootup Delux program came in handy converting programs to load up with the CPM command, I think it could work with either Binary or BASIC programs, the BASIC program I think needed something else for it to work though.
* Using the old Amstrad Languages :D   * with the Firmware :P
* I also like to problem solve code in BASIC :)   * And type-in Type-Ins! :D

Home Computing Weekly Programs
Popular Computing Weekly Programs
Your Computer Programs
Updated Other Program Links on Profile Page (Update April 16/15 phew!)
Programs for Turbo Pascal 3

AMSDOS

Quote from: robbarton on 21:21, 21 September 16
Uploaded AA71 today - 11 issues left  :)


The Red Link from the AA Type-ins Page wasn't resolving itself, even after clicking on it to view the AA71 type-ins!!). So have edit/save page to resolve. This update hasn't been logged in Recent Changes.
* Using the old Amstrad Languages :D   * with the Firmware :P
* I also like to problem solve code in BASIC :)   * And type-in Type-Ins! :D

Home Computing Weekly Programs
Popular Computing Weekly Programs
Your Computer Programs
Updated Other Program Links on Profile Page (Update April 16/15 phew!)
Programs for Turbo Pascal 3

robbarton

AA75 uploaded today - 10 left!  :)

I'm moving onto issues 90-98 now as those scans are mostly clear enough to read. If anyone could post clear scans of AA72, 91 and 96 I would be grateful (just images are fine, don't need to be OCR'd as long as I know what is supposed to be typed in).

zeropolis79

I'll see what I can do...

robbarton

Today I uploaded AA91 to the wiki - 9 left to go.

I've completed the rest of AA90 but I'm getting an error on Alpha-Scroll. I've used TypeChecker but when I enter the message in Alpha-Scroll I get bad command - I'm not using any special characters, I'm just putting "CPCwiki is the best"!

Is anybody aware of any corrections to that listing please? If not I'll have to dig out the magnifying glass!  :o

AMSDOS

Quote from: robbarton on 16:29, 01 October 16
Today I uploaded AA91 to the wiki - 9 left to go.

I've completed the rest of AA90 but I'm getting an error on Alpha-Scroll. I've used TypeChecker but when I enter the message in Alpha-Scroll I get bad command - I'm not using any special characters, I'm just putting "CPCwiki is the best"!

Is anybody aware of any corrections to that listing please? If not I'll have to dig out the magnifying glass!  :o


Maybe the problem is TypeChecker itself? I recall having this program working back in the day, it was also published in ACU too so it should be online, sorry I should of mentioned this earlier.
* Using the old Amstrad Languages :D   * with the Firmware :P
* I also like to problem solve code in BASIC :)   * And type-in Type-Ins! :D

Home Computing Weekly Programs
Popular Computing Weekly Programs
Your Computer Programs
Updated Other Program Links on Profile Page (Update April 16/15 phew!)
Programs for Turbo Pascal 3

robbarton

Actually,  :picard: the problem was an ID10T error  :picard:

After loading, the screen presents the message "Type filename to load or press ENTER to enter message".

I was typing my message and wondering why I was getting a bad command - turns out there was no file named like my message  :-[

It was late, that's my excuse! The file was actually fine once I entered the message in the appropriate place.

So that's now issue 90 uploaded to the wiki - 8 left to do (for clarification, I have issues 26 and 72 almost ready but they need checking and debugging, so really it's 6 to type and 2 to finish off).

robbarton

Uploaded AA issues 92 and 94 to the wiki this morning.

6 left to do:  93, 95, 96, 98, 26 (to check) and 72 (1 to do and then all to check).  I'm feeling quite  :) about the progress.

I've already extracted the OCR text for all these issues so it should be relatively straightforward to get these rattled off in the next few weeks - maybe before the end of October.

AMSDOS

* Using the old Amstrad Languages :D   * with the Firmware :P
* I also like to problem solve code in BASIC :)   * And type-in Type-Ins! :D

Home Computing Weekly Programs
Popular Computing Weekly Programs
Your Computer Programs
Updated Other Program Links on Profile Page (Update April 16/15 phew!)
Programs for Turbo Pascal 3

robbarton

Uploaded AA93 to the wiki today.

Now I am trying to finish AA26 - I have an error in Diskedit that I'm trying to fix (line 900 of the code keeps getting corrupted when I run the program and it sits in memory, so I must be overwriting it somehow). Otherwise it's almost ready to go.

EDIT - issue number

robbarton

Diskedit is driving me mad!

I think I've typed both listings correctly but must have made a typo somewhere. Please could fresh eyes point out my mistake?!

I've run the second listing first as instructed, which produces a binary file and as far as I can tell that is ok. But when I run diskedit.bas I am getting an error after entering drive A track 1 - it seems to be appending a value to the end of the code for some reason (poking it into memory?)

[attach=2]

It's driving me bonkers!

PS is line 500 correct or is there a colon missing before the POKE command?

robcfg

#238

Could it be that you're loading the binary data in the wrong place?


Or you have indeed an error in the binary file.

robbarton

I assume I've made an error! I'll check the binary listing again. Thanks

Sent from my MotoE2(4G-LTE) using Tapatalk


Johnny Olsen

There is a colon missing before the poke command.

If you upload both text file it will make it easier to help you.

Please do not delete "diskedit data loader" file but save it with the other two files.

robbarton

Thanks Jonny - I've added the colon to the first listing and am now 99.9% sure the problem is to do with our old friend "1 and l" substitution within the second (machine code) listing, lines 50, 70 and 100...

Of course I might also have an error further down in the DATA statements too...  :-[

diskedit.bas



1 'Diskedit
2 'by Martin Schroeder
3 'Amstrad Action November 87
10 IF PEEK(&AF00)<>221 THEN LOAD"!diskedit.bin"
20 'Error Messages off & Retry Count=1
30 POKE &BE78,&FF:POKE &BE66,1
40 RESTORE 50:FOR i=1 TO 4:READ a:KEY a,CHR$(i):NEXT
50 DATA 134,132,136,130
60 DEFINT A-Z:DIM ss(10):v=1
70 GOSUB 1020:GOSUB 890
80 MODE 2:INK 0,0:BORDER 0:INK 1,26:page=1
90 GOSUB 610
100 buff=&3000
110 LOCATE 1,4:CALL &AF00,buff
120 x=7:y=4
130 GOSUB 290 ' Cursor on/off  Test key
140 a=ASC(a$)
150 IF a<10 AND a>0 THEN ON a GOTO 780,860,820,840
160 IF a=13 THEN 440 'ASCII Input
170 IF (a>239 AND a<244) THEN 350
180 IF NOT((a>64 AND a<71) OR (a>47 AND a<58)) THEN 130
190 s=VAL("&"+a$)
200 zl$=a$:LOCATE x,y:PRINT zl$:x=x+1
210 GOSUB 290:a=ASC(a$)
220 IF NOT((a>64 AND a<71) OR (a>47 AND a<58)) THEN 210
230 s=VAL("&"+a$)
240 LOCATE x,y:PRINT a$
250 g=VAL("&"+zl$+a$):POKE buff+(y-4)*16+INT((x-7)/3),g
260 IF a$=CHR$(13) THEN 120
270 LOCATE 58+INT((x-7)/3),y:PRINT CHR$(1);CHR$(g);
280 GOTO 420
290 CALL &BB81:LOCATE x,y:a$=UPPER$(INKEY$):IF a$="" THEN CALL &BB84:GOTO 290
300 CALL &BB84:IF a$="]" THEN 740  'next Page
310 IF a$="/" THEN 940 'write sector
320 IF a$="\\" THEN 70 'Track & Drive
330 RETURN
340 ' Move Cursor
350 ON (a-239) GOTO 360,380,400,420
360 y=y-1:IF y<4 THEN y=19
370 GOTO 130
380 y=y+1:IF y>19 THEN y=4
390 GOTO 130
400 d=INT((x-7)/3):x=d*3+4:IF x<7 THEN x=52:GOTO 360
410 GOTO 130
420 d=INT((x-7)/3):x=d*3+10:IF x>53 THEN x=7:GOTO 380
430 GOTO 130
440 x=INT((x-7)/3)+58
450 GOSUB 290
460 a=ASC(a$)
470 IF a=13 THEN x=(x-58)*3+7:GOTO 130 'Hex input
480 IF a<10 AND a>0 THEN hh=1:ON a GOTO 780,860,820,840
490 IF (a>239 AND a<244) THEN GOTO 520
500 LOCATE x,y:PRINT CHR$(1);CHR$(a):POKE buff+16*(y-4)+x-58,a
510 LOCATE 3*(x-58)+7,y:PRINT HEX$(a):GOTO 590
520 ON (a-239) GOTO 530,550,570,590
530 y=y-1:IF y<4 THEN y=19
540 GOTO 450
550 y=y+1:IF y>19 THEN y=4
560 GOTO 450
570 x=x-1:IF x<58 THEN x=73:GOTO 530
580 GOTO 450
590 x=x+1:IF x>73 THEN x=58:GOTO 550
600 GOTO 450
610 GOSUB 620:GOTO 660
620 LOCATE 2,2:PRINT"     Drv.:"d$"    Pag.:"page" Tra.:"HEX$(tra,2)"  ID: ";
630 IF fc THEN GOTO 1010 ELSE FOR s=1 TO diff+1:PRINT HEX$(ss(s),2);SPC(1);:NEXT:PRINT SPACE$(3);:PRINT
640 LOCATE 36+v*3,2:PRINT CHR$(24);HEX$(ss(v),2);CHR$(24);:PRINT
650 RETURN
660 MOVE 1,388:DRAW 586,388:DRAW 586,365:MOVE 585,388:DRAW 585,365:DRAW 1,365:DRAW 1,388:MOVE 2,388:DRAW 2,365
670 RESTORE 730:FOR o=1 TO 4:READ a,b,c,d:MOVE a,b:DRAW c,d:MOVE a+1,b-1:DRAW c+1,d-1:NEXT
680 CALL &BB84
690 TAG:MOVE 20,70:PRINT CHR$(240);" .. Cursor up  ";CHR$(241);" .. Cursor down  ";CHR$(243);" .. Cursor right  ";CHR$(242);" .. Cursor left";
700 MOVE 20,50:PRINT CHR$(13);" .. Hex/Ascii  ] .. Next Page    / .. Write Sector  \\ .. Track/Driv";
710 MOVE 20,30:PRINT "f6 . Sector up  f4 . Sector down  f8 . Track up      f2 . Track down";
720 TAGOFF:RETURN
730 DATA 1,1,1,85,1,85,585,85,585,85,585,1,585,1,1,1
740 'Page up/down
750 page=page+1:IF page>2 THEN page=1
760 buff=&3000+256*(page-1)
770 LOCATE 1,4:CALL &AF00,buff:fl=1:GOSUB 610:fl=0:GOTO 290
780 v=v+1
790 IF v>diff+1 THEN v=1
800 CALL &AFC6,&3000,dri,tra,ss(v)
810 GOSUB 620:LOCATE 1,4:CALL &AF00,buff:IF hh THEN hh=0:GOTO 450 ELSE 130
820 tra=tra+1:IF tra>41 THEN tra=0
830 GOSUB 890:GOTO 810
840 tra=tra-1:IF tra<0 THEN tra=41
850 GOTO 830
860 v=v-1:IF v<1 THEN v=diff+1
870 GOTO 800
880 ' Get ID & Read first SECTOR of TRACK
890 CALL &AFB0,tra,dri:POKE &A000,0:CALL &AF90,dri
900 fc=PEEK(&A000):adr%=0:CALL &AF70,@adr%
910 diff=adr%-&7001:FOR u=&7000 TO &7000+diff:ss(u-&6FFF)=PEEK(u):NEXT
920 CALL &AFC6,&3000,dri,tra,ss(v)
930 RETURN
940 ' Write sector
950 LOCATE 2,2:PRINT SPACE$(64):LOCATE 2,2:PRINT SPC(10);CHR$(7);
960 PRINT "Write  Sector:";HEX$(ss(v),2);" -  Are you sure ? (y-yes  n-no)"
970 w$="":WHILE w$<>"n" AND w$<>"y":w$=LOWER$(INKEY$):WEND
980 IF w$="n" THEN GOSUB 620:GOTO 330
990 CALL &AFCD,&3000,dri,tra,ss(v)
1000 GOSUB 620:GOTO 330
1010 PRINT"  NO FORMAT !!";CHR$(7);SPC(14):GOTO 650
1020 PRINT CHR$(4);CHR$(2);"Diskedit V1.0 (c) 1987 by M.Schroeder"
1030 LOCATE 1,3:INPUT "Drive:",d$:LOCATE 10,3:INPUT "  Track:",tra
1040 d$=UPPER$(d$):dri=ASC(d$)-65:IF dri<0 OR dri>1 THEN 1020
1050 IF tra>41 THEN 1020
1060 RETURN




diskedit.dat



1 'Diskedit (data loader)
2 'by Martin Schroeder
3 'Amstrad Action  November 87
20 MODE 2:f$=CHR$(13)+CHR$(10):adr=44800:steps=24
30 FOR loop=1 TO steps:check=0
40 FOR l=1 TO 10:READ a$:a=VAL("&"+a$)
50 POKE adr+(loop-l)*10+l-1,a:check=check+a:NEXT
60 READ checks$:checks=VAL("&"+checks$):IF checks<>check THEN 100
70 LOCATE 1,2:PRINT"checking line:";150+(loop-l)*10:NEXT
75 PRINT:PRINT CHR$(7);"Insert disc then press any key:"
80 CALL &BB18:SAVE"diskedit",b,&AF00,&100
90 END
100 errl=150+(loop-l)*10
110 PRINT CHR$(11);CHR$(13);"Error in line:";errl;CHR$(7)
120 PRINT"Press f0 to edit the line.";f$
130 KEY 128,"EDIT"+STR$(errl)+CHR$(13)
140 'MC CODE (Length:629 bytes)
150 DATA DD,66,01,DD,6E,00,06,10,C5,CD,437
160 DATA 51,AF,06,02,3E,20,CD,5A,BB,10,358
170 DATA F9,E5,06,10,C5,E5,7E,21,00,00,43D
180 DATA 6F,CD,55,AF,E1,C1,3E,20,CD,5A,567
190 DATA BB,23,10,EC,06,03,3E,20,CD,5A,368
200 DATA BB,10,F9,E1,06,10,C5,E5,7E,CD,5B0
210 DATA 5D,BB,E1,C1,23,10,F5,3E,0D,CD,4FA
220 DATA 5A,BB,3E,0A,CD,5A,BB,C1,10,B8,4C8
230 DATA C9,7C,CD,5A,AF,7D,CD,5A,AF,C9,637
240 DATA F5,1F,1F,1F,1F,CD,63,AF,F1,E6,527
250 DATA 0F,FE,0A,38,02,C6,07,C6,30,C3,3D7
260 DATA 5A,BB,DD,66,01,DD,6E,00,E5,21,4AA
270 DATA 01,70,06,40,C5,46,3A,00,70,B8,324
280 DATA 28,05,23,C1,10,F2,C5,C1,EB,E1,565
290 DATA 73,23,72,C9,DD,5E,00,16,00,21,343
300 DATA 00,70,06,24,D5,E5,C5,DF,AD,AF,554
310 DATA 30,18,C1,E1,D1,3A,51,BE,77,23,49E
320 DATA 10,EE,C9,6C,C5,07,DD,5E,00,DD,517
330 DATA 56,02,DF,C3,AF,C9,E1,E1,E1,3E,653
340 DATA 01,32,00,A0,C9,63,C7,07,CD,D4,46E
350 DATA AF,DF,E4,AF,C9,CD,D4,AF,DF,E7,800
360 DATA AF,C9,DD,66,07,DD,6E,06,DD,5E,54E
370 DATA 04,DD,56,02,DD,4E,00,C9,66,C6,459
380 DATA 07,4E,C6,07,00,00,00,00,00,00,122




AMSDOS


Quote from: robbarton on 10:30, 16 October 16
Thanks Jonny - I've added the colon to the first listing and am now 99.9% sure the problem is to do with our old friend "1 and l" substitution within the second (machine code) listing, lines 50, 70 and 100...


Line 100 should be loop minus one:



100 errl=150+(loop-1)*10



Line 70 will be the same (loop minus one I mean).


I had a look at your screenshot line 50 looks it might look like this:



50 POKE adr+(loop-1)*10+l-1,a:check=check+a:NEXT



this will ensure the correct address gets poked.
* Using the old Amstrad Languages :D   * with the Firmware :P
* I also like to problem solve code in BASIC :)   * And type-in Type-Ins! :D

Home Computing Weekly Programs
Popular Computing Weekly Programs
Your Computer Programs
Updated Other Program Links on Profile Page (Update April 16/15 phew!)
Programs for Turbo Pascal 3

robbarton

Thanks @AMSDOS , that did the trick. I tried a few substitutions but it was late (that's always my excuse  :) ) so I gave up too soon.

Thankfully that means that once I check the other type ins, issue 26 will be ready to upload.

I've also almost finished AA95 so that will leave 96, 98 and 72.

Johnny Olsen

I know it's a little late, but I've found a version here including a help file.

http://cpcrulez.fr/applications_list_disc-diskedit.htm

Maybe you can compare the two txt files and in this way find typos.

robbarton

I should be able to upload issues 26, 95, 96 and 98 to the wiki tomorrow so that will just leave number 72.

I've spent a bit of time on a side project (yes already looking at the next thing!) but I'll post in the programming section so that I'm not clogging up this thread with my own stuff.

robbarton

AA26 now uploaded to the wiki

Almost finished, just got a few niggles to sort out:

1) AA95 - 1 problem left: I've checked the Scatter Plot code which I think is correct but I can't get a graph to display, it endlessly asks for data points. AA have a screenshot of it working so I must have made a mistake.

2) AA96 - 1 problem left: Please can someone provide a clear scan of page 28? I have data errors in Skoda Simulator and the page is too blurry for me to correct.

3) AA98 - 1 problem left: I've checked the Dinosaur type in and despite the checksums matching, the game seems to have very bad collision detection and very slow movement - I assume I have inverted some characters somewhere so the checksum calculates the same but the code itself doesn't execute properly. I'll go over it again before upload.

4) AA72 - If anyone can provide clear scans of the type-in pages so I can check my work I would be grateful.

Thank you again to everyone who has helped.

Nich

Quote from: robbarton on 13:49, 23 October 16
2) AA96 - 1 problem left: Please can someone provide a clear scan of page 28? I have data errors in Skoda Simulator and the page is too blurry for me to correct.
I uploaded the Amstrad Action version of Skoda Simulator to CPC-POWER:

http://www.cpc-power.com/index.php?page=detail&onglet=dumps&num=6507

Quote3) AA98 - 1 problem left: I've checked the Dinosaur type in and despite the checksums matching, the game seems to have very bad collision detection and very slow movement - I assume I have inverted some characters somewhere so the checksum calculates the same but the code itself doesn't execute properly. I'll go over it again before upload.
I recall after typing Dinosaur when it was originally published that the game was very slow to play, so I don't think it's due to any mistakes in your typing.

Quote4) AA72 - If anyone can provide clear scans of the type-in pages so I can check my work I would be grateful.
I'll try to scan and upload them for you soon.

robbarton

Quote from: Nich on 16:20, 23 October 16
I uploaded the Amstrad Action version of Skoda Simulator to CPC-POWER:

http://www.cpc-power.com/index.php?page=detail&onglet=dumps&num=6507



Thank you @Nich - I'll pilfer that and include it with the rest of the AA96 type ins! I wasn't sure why I didn't find it when I searched CPC Power for Amstrad Action type ins when I started doing this project - so just checked and I would have needed to search each individual program by name as it is not tagged with Amstrad Action in the search parameters.

Quote
I recall after typing Dinosaur when it was originally published that the game was very slow to play, so I don't think it's due to any mistakes in your typing.
I'll try to scan and upload them for you soon.

Good to know it might not need any amendments.

With these two issues addressed I'll upload them to the wiki today and maybe take another look at AA95.


AMSDOS

Quote from: Nich on 16:20, 23 October 16
I uploaded the Amstrad Action version of Skoda Simulator to CPC-POWER:

http://www.cpc-power.com/index.php?page=detail&onglet=dumps&num=6507



Well it looks like the Skoda Simulator was published in CPC Attack before Amstrad Action. CPC-Power has Acknowledged it appeared in AA and the Attached Disk Image is credited as the AA version.


The same thing also happened with David Hall's Alpha Scroll, which was originally published in ACU then followed by AA.


I've just been through a dozen or so issues of the Australian Magazine "The Amstrad User" and found a number of CPC programs in there were from AA, all credited to their original Authors. "The Amstrad User" commenced Feb '85, which had some programs from the early ACU (CPC464 User) magazine and pretty much ended (as "The PC Mag") with CPC programs from other Magazines like Your Computer "Englebert", Home Computing Weekly "Bullseye" & "Grid Warrior". I'm unsure where "The Amstrad User" source those programs, they were based here in Melbourne, I'm guessing they went to the State Library, but need to check into this.
* Using the old Amstrad Languages :D   * with the Firmware :P
* I also like to problem solve code in BASIC :)   * And type-in Type-Ins! :D

Home Computing Weekly Programs
Popular Computing Weekly Programs
Your Computer Programs
Updated Other Program Links on Profile Page (Update April 16/15 phew!)
Programs for Turbo Pascal 3

Powered by SMFPacks Menu Editor Mod