moving on

This commit is contained in:
Antoine Vignau 2024-01-01 08:25:27 +01:00
parent e42fdfa86a
commit 214bea2198
7 changed files with 21035 additions and 20544 deletions

View File

@ -0,0 +1,40 @@
A beautiful young lady is held captive in the city of Kikekankoi. Will you be able to rescue her?
Welcome to Le Myst<73>re de Kikekankoi, the famous adventure game written by Laurent Benes and published by Loriciels in 1983 (Oric) and 1985 (Amstrad). It is now available on your Apple II in French and English versions.
Get it @ https://www.brutaldeluxe.fr/products/apple2/kikekankoi/
Happy New Year!
Antoine Vignau & Olivier Zardini
Brutal Deluxe Software
---
Une magnifique jeune femme est retenue prisonni<6E>re dans la ville de Kikekankoi. Serez-vous capable de la sauver ?
Bienvenue au Myst<73>re de Kikekankoi. Le cŽl<C5BD>bre jeu d'aventure fran<61>ais de Laurent Benes, publiŽ par Loriciels en 1983 (Oric) et 1985 (Amstrad). Il est dŽsormais disponible sur votre Apple II en versions fran<61>aise et anglaise.
A tŽlŽcharger sur @ https://www.brutaldeluxe.fr/products/apple2/kikekankoi/
Bonne annŽe !
Antoine Vignau & Olivier Zardini
Brutal Deluxe Software
---
Une magnifique jeune femme est retenue prisonni<6E>re dans la ville de Kikekankoi. Serez-vous capable de la sauver ?
Bienvenue au Myst<73>re de Kikekankoi. Le cŽl<C5BD>bre jeu d'aventure fran<61>ais de Laurent Benes, publiŽ par Loriciels en 1983 (Oric) et 1985 (Amstrad). Il est dŽsormais disponible sur votre Apple II en versions fran<61>aise et anglaise. Merci ˆ Xavier & HervŽ.
A tŽlŽcharger sur @ https://www.brutaldeluxe.fr/products/apple2/kikekankoi/
Bonne annŽe !
Antoine Vignau & Olivier Zardini
Brutal Deluxe Software
---
https://twitter.com/antoine_vignau/status/1741662262325096470

View File

@ -20,37 +20,17 @@ HGR rep #$30
*----------------------------------- *-----------------------------------
RDKEY RDKEY rep #$30
PushWord #0
PushWord #%0000_0000_0000_1000 ]lp pha
PushLong #eventREC PushWord #%00000000_00001010
PushLong #taskREC
_GetNextEvent _GetNextEvent
pla pla
beq RDKEY beq ]lp
lda eventREC sep #$30
cmp # rts
PEA ^eventREC
PEA eventREC
_GetNextEvent
PLA
TAY
beq L011DBE
LDA eventREC
CMP #$0001 ; mouseDownEvt
BEQ L011DE4
BRL L011EC4
*--------
eventREC
oWHAT DW $0000 ; what - event code
oMESSAGE ADRL $00000000 ; message - event message
ADRL $00000000 ; when - tick count
oWHERE
oWHEREY DW $0000 ; where - mouse location
oWHEREX DW $0000
oMODIFIERS DW $0000 ; modifiers - modifiers
*----------------------------------- *-----------------------------------
* RECOPIE ACTION A$ * RECOPIE ACTION A$

Binary file not shown.

View File

@ -27,20 +27,30 @@
use 4/Util.Macs use 4/Util.Macs
use 4/Window.Macs use 4/Window.Macs
*-----------------------
KBD = $e0c000
KBDSTROBE = $e0c010
RDVBLBAR = $e0c019
GSOS = $e100a8 GSOS = $e100a8
*-----------------------
dpFROM = $70 dpFROM = $70
dpTO = dpFROM+2 dpTO = dpFROM+2
*-----------------------
refIsPointer = $0 refIsPointer = $0
refIsHandle = $1 refIsHandle = $1
refIsResource = $2 refIsResource = $2
TRUE = 255 appleKey = $0100
FALSE = 0 mouseDownEvt = $0001
mouseUpEvt = $0002
keyDownEvt = $0003
ptr012000 = $012000 *-----------------------
ptrE12000 = $e12000
modeForeCopy = $0004 ; QDII Table 16-10 modeForeCopy = $0004 ; QDII Table 16-10
@ -50,6 +60,14 @@ mode640 = $80
maxX = 320 maxX = 320
maxY = 200 maxY = 200
ptr012000 = $012000
ptrE12000 = $e12000
*-----------------------
TRUE = 1
FALSE = 0
*----------------------------------- *-----------------------------------
* DU 16-BITS * DU 16-BITS
*----------------------------------- *-----------------------------------
@ -77,6 +95,39 @@ ICI phk
ora #$0100 ora #$0100
sta myID sta myID
*-----------------------------------
* MEMORY...
*-----------------------------------
jsr make64KB
bcc okMEM1
koMEM pha
PushLong #memSTR1
PushLong #errSTR2
PushLong #errSTR1
PushLong #errSTR2
_TLTextMountVolume
pla
brl meQUIT1
okMEM1 sty ptrTEXT
stx ptrTEXT+2
stx ptrBACKGND+2
*-----------------------
jsr make64KB
bcs koMEM
sty ptrUNPACK
stx ptrUNPACK+2
stx ptrIMAGE+2
*-----------------------------------
* DESKTOP MODE
*-----------------------------------
pha pha
pha pha
PushWord myID PushWord myID
@ -84,15 +135,31 @@ ICI phk
PushLong #toolTBL PushLong #toolTBL
_StartUpTools _StartUpTools
PullLong ssREC PullLong ssREC
bcc okTOOL
_HideMenuBar pha
PushLong #tolSTR1
PushLong #errSTR2
PushLong #errSTR1
PushLong #errSTR2
_TLTextMountVolume
pla
brl meQUIT
okTOOL _HideMenuBar
_InitCursor _InitCursor
_HideCursor _HideCursor
PushLong #0 PushWord #0
PushWord #5 ; SetDeskPat PushWord #%11111111_11111111
PushWord #$4000 PushWord #0
PushWord #$0000 _FlushEvents
pla
PushLong #0
PushWord #5 ; SetDeskPat
PushWord #$4000
PushWord #$0000
_Desktop _Desktop
pla pla
pla pla
@ -139,13 +206,13 @@ okSHADOW
* AU REVOIR LE IIGS * AU REVOIR LE IIGS
*----------------------------------- *-----------------------------------
QUIT _GrafOff QUIT rep #$30
PushWord #refIsPointer meQUIT PushWord #refIsPointer
PushLong ssREC PushLong ssREC
_ShutDownTools _ShutDownTools
PushWord myID meQUIT1 PushWord myID
_DisposeAll _DisposeAll
PushWord appID PushWord appID
@ -162,13 +229,76 @@ QUIT _GrafOff
brk $bd brk $bd
*-----------------------------------
* UNE BELLE BIBLIOTHEQUE
*-----------------------------------
*-----------------------------------
* RESERVE 64K
*-----------------------------------
make64KB pha
pha
PushLong #$010000
PushWord myID
PushWord #%11000000_00011100
PushLong #0
_NewHandle
phd
tsc
tcd
ldy #2
lda [3],y
tax
lda [3]
tay ; low in X
pld
pla ; we do not keep track of the handle
pla
rts
*-----------------------------------
* SAVE THE SHR SCREEN
*-----------------------------------
saveBACK _HideCursor
PushLong #ptrE12000
PushLong ptrBACKGND
PushLong #32768
_BlockMove
_ShowCursor
rts
*-----------------------------------
* RESTORE THE SHR SCREEN
*-----------------------------------
loadBACK _HideCursor
PushLong ptrBACKGND
PushLong #ptrE12000
PushLong #32768
_BlockMove
_ShowCursor
rts
*----------------------------------- *-----------------------------------
* DES DONNES 16-BITS * DES DONNES 16-BITS
*----------------------------------- *-----------------------------------
myINDEX ds 2 myINDEX ds 2
*----------------------------------- *----------------------------------- Memory Manager
appID ds 2
myID ds 2
myDP ds 2
ptrTEXT adrl $00000000 ; 32k bank 1
ptrBACKGND adrl $00008000 ; 32k
ptrUNPACK adrl $00000000 ; 32k bank 2
ptrIMAGE adrl $00008000 ; 32k
*----------------------------------- Quickdraw II
palette320 dw $0000,$0777,$0841,$072C,$000F,$0080,$0F70,$0D00 palette320 dw $0000,$0777,$0841,$072C,$000F,$0080,$0F70,$0D00
dw $0FA9,$0FF0,$00E0,$04DF,$0DAF,$078F,$0CCC,$0FFF dw $0FA9,$0FF0,$00E0,$04DF,$0DAF,$078F,$0CCC,$0FFF
@ -193,7 +323,15 @@ blackPATTERN ds 32,$00
ds 32,$ee ds 32,$ee
whitePATTERN ds 32,$ff whitePATTERN ds 32,$ff
*----------------------------------- New Tool table *----------------------------------- Error messages
tolSTR1 str 'Error while loading tools'
memSTR1 str 'Cannot allocate memory'
filSTR1 str 'Cannot load file'
errSTR1 str 'Quit'
errSTR2 str ''
*----------------------------------- Tool Locator
ssREC ds 4 ssREC ds 4
@ -235,20 +373,43 @@ toolTBL dw $0000 ; flags
dw $001E ; Resource Manager dw $001E ; Resource Manager
dw $0100 dw $0100
*----------------------------------- *----------------------------------- GS/OS
proERR ds 2 ; GS/OS error code
proQUIT dw 2 ; pcount proQUIT dw 2 ; pcount
ds 4 ; pathname ds 4 ; pathname
ds 2 ; flags ds 2 ; flags
*-----------------------------------
appID ds 2 *----------------------------------- Window Manager
myID ds 2
myDP ds 2
mainPORT ds 4 mainPORT ds 4
taskREC ds 2 ; wmWhat +0
taskMESSAGE ds 4 ; wmMessage +2
taskWHEN ds 4 ; wmWhen +6
taskWHERE ds 4 ; wmWhere +10
taskMODIFIERS ds 2 ; wmModifiers +14
taskDATA ds 4 ; wmTaskData +16
*----------------------------------- Standard File Tool Set
strLOADFILE str 'Charger quelle partie ?'
strSAVEFILE str 'Enregistrer sous...'
typeLIST hex 01
hex 5d ; Game/Edu files
replyPTR ds 2 ; 0 good
ds 2 ; 2 fileType
ds 2 ; 4 auxFileType
namePATH hex 06 ; 6 fileName
namePATH1 asc 'Partie' ; 7 fileName (16 normally)
ds 9
loadPATH ds 1 ; 22 fullPathname (string length)
loadPATH1 ds 129 ; 23 fullPathname (128 normally)
*----------------------------------- *-----------------------------------
* CODE BASIC EN ASM :-) * CODE BASIC EN ASM :-)
*----------------------------------- *-----------------------------------

File diff suppressed because it is too large Load Diff

View File

@ -37,10 +37,6 @@ chrNON = "N"
idxCASSE = 200 idxCASSE = 200
idxTIMER = 201 idxTIMER = 201
*--- Softswitches
VBL = $e0c019
*--- The firmware routines *--- The firmware routines
*HGR = $F3E2 ; HGR *HGR = $F3E2 ; HGR
@ -93,7 +89,9 @@ SETKBD = $FE89
* CODE BASIC EN ASM :-) * CODE BASIC EN ASM :-)
*----------------------------------- *-----------------------------------
PLAY jsr initALL PLAY sep #$30
jsr initALL
jsr HGR jsr HGR
* jsr HOME ; clear text screen * jsr HOME ; clear text screen
@ -1803,9 +1801,9 @@ waitMS lda #0 ; skip if not zero
sty LINNUM sty LINNUM
doW1 ldy LINNUM doW1 ldy LINNUM
doW2 lda #60 ; 1/100<30>me de seconde doW2 lda #60 ; 1/100<30>me de seconde
]lp ldal VBL ]lp ldal RDVBLBAR
bmi ]lp bmi ]lp
]lp ldal VBL ]lp ldal RDVBLBAR
bpl ]lp bpl ]lp
dey dey
bne doW2 bne doW2

Binary file not shown.