CPC Rulez
https://cpcrulez.fr/forum/

VC³ 2024 : pre-Challenge
https://cpcrulez.fr/forum/viewtopic.php?f=4&t=7091
Page 1 sur 2

Auteur :  Princesse Mariana [ 26 Nov 2024, 18:16 ]
Sujet du message :  VC³ 2024 : pre-Challenge

L'annonce du challenge est ici :adrt: viewtopic.php?f=4&t=7092

Bon, je ne suis pas sûre d'avoir tout compris. Je suis même à peu près certaine de n'avoir rien compris. J’ai néanmoins passé un agréable moment de malaise, il me semble donc important que vous puissiez en profiter : L'objectif est de créer un morceau de code qui génère exactement cette forme, et le défi est probablement de le rendre aussi petit/optimisé que possible. Quelqu'un relève le défi en assembleur Z80 ?

src/url: https://logiker.com/Vintage-Computing-C ... lenge-2024

Auteur :  hERMOL [ 27 Nov 2024, 09:20 ]
Sujet du message :  Re: Vintage Computing Christmas Challenge 2024 (VC³ 2024)

Image

Code :
10 CLS:PRINT " ";STRING$(8,"*"):print STRING$(10,"*"):print STRING$(2,"*");spc(6);STRING$(2,"*"):print SPC(8);"**":PRINT " ";STRING$(8,"*"):PRINT STRING$(8,"*"):PRINT"**":PRINT STRING$(2,"*");STRING$(6," ");STRING$(2,"*"):PRINT STRING$(10,"*")
11 PRINT " ";STRING$(8,"*"):PRINT:PRINT SPC(4);"**":PRINT SPC(4);"**"

Prochaine étape .. l'assembleur ...

Auteur :  hERMOL [ 27 Nov 2024, 11:20 ]
Sujet du message :  Re: Vintage Computing Christmas Challenge 2024 (VC³ 2024)

v1 (194 bytes)
v2 (138 bytes)
v3 (133 bytes)
v4 (100 bytes)
v5 (95 bytes)

v6 (61 bytes)
Code :
nolist

write "v6"

run start
org #F06

dats:
db #01,#08
db #01,#0C
db #06,#02
db #08,#02
db #01,#12
db #01,#02
db #08,#02
db #06,#0C
db #01,#08
db #0F,#02
db #08,#02

start:
ld a,1:call #bc0e

ld de,#1814:ld hl,#0F05:call #bb66      ;;WINDOW 15,24,5,20

ld c,11
spcet:
inc l:ld b,(hl):ld a," ":call #bb5a:djnz $-3
inc l:ld b,(hl):ld a,"*":call #bb5a:djnz $-3
dec c:jr z,$
jr spcet

Auteur :  stephbb75 [ 27 Nov 2024, 22:15 ]
Sujet du message :  Re: Vintage Computing Christmas Challenge 2024 (VC³ 2024)

Jolie le code et le résultat.

Auteur :  Longshot [ 27 Nov 2024, 22:33 ]
Sujet du message :  Re: Vintage Computing Christmas Challenge 2024 (VC³ 2024)

Il me semble que ce n'est pas ça le motif du concours, qui sera indiqué le 2 décembre.

En face du "point d'interrogation", il y a un "stay tuned" :mdr:

En principe, les résultats doivent rester secrets jusqu'à la date limite, même si ce n'est pas très respecté.

Auteur :  hERMOL [ 28 Nov 2024, 05:59 ]
Sujet du message :  Re: Vintage Computing Christmas Challenge 2024 (VC³ 2024)

roohh faux départ , en tout cas, je me suis bien amusé.

Auteur :  RetroPoke [ 28 Nov 2024, 09:49 ]
Sujet du message :  Re: Vintage Computing Christmas Challenge 2024 (VC³ 2024)

Bonjour,
Je suis tombé sur ce topic par hasard et le hasard fait bien les choses car j'aime bien ce genre de concours.

J'ai voulu aussi m'amuser un peu même si ce n'est pas le motif du concours, cela pourra peut-être être utile pour certains !
Voici mon code : (78 Octets)
Code :
ORG #A000
; INITIALISER LE MODE, LES COULEURS
   CALL #BBFF          ; MODE 1 'INITIALISATION PRINCIPALE DU GESTIONNAIRE'
   LD BC, #0000
   CALL #BC38         ; BORDER 00, 00
   XOR A
   LD B, A
   LD C, A
   CALL  #BC32         ; INK 1, 00, 00
   LD A, 1
   LD BC, #1A1A
   CALL  #BC32         ; INK 1, 26, 26

; INITIALISER LA FENETRE D'AFFICHAGE
   LD HL, #0F05
   LD DE, #1819         ;             'H'   'D'  'L'   'E'   
   CALL #BB66         ; WINDOW  15,  24,  5,  25

; AFFICHER LES CARACTERES UN PAR UN EN TOURNANT LES CHIFFRES
   LD HL, DATA         ; 'HL' POINTE SUR LA TABLE DE LA MATRICE 10x13
   LD C, 17            ; NOMBRE DE CHIFFRE A TOURNER

    AFF_MATRICE
     LD E, (HL)
   INC HL
   LD B, 8            ; UN CHIFFRE TOURNE 8 FOIS

    FAIRE_CHIFFRE
   LD A, 32
   SLA E            ; PLACE LE BIT DE GAUCHE DE 'E' DANS LE CARRY
   JR NC, AFF_CARACTERE
   LD A, 42            ; CARACTERE MULTIPLIE

    AFF_CARACTERE
   CALL #BB5A
   DJNZ, FAIRE_CHIFFRE
   DEC C
   JR NZ, AFF_MATRICE

; ATTENDRE L'APPUIE D'UNE TOUCHE POUR RENDRE LA MAIN
   CALL #BB06
   RET               ; RETOURNE AU BASIC

DATA   DB #7F, #BF, #FC, #0C, #03, #7F, #FF, #EC, #03, #03, #FF, #DF, #E0, #00, #30, #0C, #00
FIN                    ; LONGUEUR > 78 OCTETS

Auteur :  Longshot [ 28 Nov 2024, 09:56 ]
Sujet du message :  Re: Vintage Computing Christmas Challenge 2024 (VC³ 2024)

Citer :
Je suis tombé sur ce topic par hasard et le hasard fait bien les choses car j'aime bien ce genre de concours.


J'ai réalisé un petit article sur celui de l'année dernière si le sujet t'intéresse

https://blog.logonsystem.eu/des-etoiles-plein-les-yeux/

Auteur :  RetroPoke [ 28 Nov 2024, 10:08 ]
Sujet du message :  Re: Vintage Computing Christmas Challenge 2024 (VC³ 2024)

Longshot a écrit :
Citer :
Je suis tombé sur ce topic par hasard et le hasard fait bien les choses car j'aime bien ce genre de concours.


J'ai réalisé un petit article sur celui de l'année dernière si le sujet t'intéresse

https://blog.logonsystem.eu/des-etoiles-plein-les-yeux/

Super, comme je l'ai dit l'autre jour, j'en apprend tous les jours.
Merci pour ton article, je vais le dévorer de suite ;)

Auteur :  markerror [ 28 Nov 2024, 11:49 ]
Sujet du message :  Re: Vintage Computing Christmas Challenge 2024 (VC³ 2024)

Bonjour,

L'idée d'utiliser un Window pour ne pas avoir à gérer le changement de ligne n'est pas bête :-).

Pour le reste, tu peux gratter un ou deux octets sur l'initialisation des couleurs.

Tu peux aussi réduire par deux la taille du logo encodé, car les caractères vont par paire.

Auteur :  RetroPoke [ 28 Nov 2024, 14:43 ]
Sujet du message :  Re: Vintage Computing Christmas Challenge 2024 (VC³ 2024)

markerror a écrit :
Bonjour,...
...
Tu peux aussi réduire par deux la taille du logo encodé, car les caractères vont par paire.


OK pour les couleurs, j'ai en effet mangé 1 octet mais je n'ai pas encore bien étudié pour en gagner plus.

Pour réduire la taille de la matrice par deux,
j'ai voulu essayer, mais les espaces ne sont pas par paire, sur la matrice de 10x13 quand une étoile commence qu 2ème caractère cela n'est pas faisable, hélas.

Il y a d'autres moyens que d'utiliser une matrice, et je vais voir si je peux grignoter qq octets.
En tous cas, merci d'avoir éxaminé mon programme!

Auteur :  hERMOL [ 29 Nov 2024, 07:52 ]
Sujet du message :  Re: Vintage Computing Christmas Challenge 2024 (VC³ 2024)

Je préfère un "JR $" au retour basic par un "CALL #BB06:RET" , d'ailleurs un JP #BB06 ne serai pas mieux ???

Auteur :  RetroPoke [ 29 Nov 2024, 09:56 ]
Sujet du message :  Re: Vintage Computing Christmas Challenge 2024 (VC³ 2024)

Faire un 'JR $', ne rend pas la main au basic, mais faut'il rendre la main dans ce concours ?
C'est sur que faire un 'JP #BB06' est plus judicieux et ça fait gagner 1 octet ! Merci

Auteur :  hERMOL [ 29 Nov 2024, 10:58 ]
Sujet du message :  Re: Vintage Computing Christmas Challenge 2024 (VC³ 2024)

markerror a écrit :
L'idée d'utiliser un Window pour ne pas avoir à gérer le changement de ligne n'est pas bête :-).

En effet, une bonne idée! :D Je suis partie de la dès le départ. La redimension de l'écran a coup de out, aurait pris trop de place.

Auteur :  markerror [ 29 Nov 2024, 11:40 ]
Sujet du message :  Re: Vintage Computing Christmas Challenge 2024 (VC³ 2024)

RetroPoke a écrit :
j'ai voulu essayer, mais les espaces ne sont pas par paire, sur la matrice de 10x13 quand une étoile commence qu 2ème caractère cela n'est pas faisable, hélas.


Aie, oui, désolé, je ne suis un peu emballé :-). Par contre pour les couleurs, il y a moyen de gratter, en analysant les valeurs de retour des registres quand on utilise un vecteur.
Le CALL &BBFF retourne opportunément le registre A à 0 (testé sur 464 et 6128). Du coup, on peut bricoler :

CALL #BBFF ; MODE 1 'INITIALISATION PRINCIPALE DU GESTIONNAIRE'
; A est a 0 en retour :-)
LD B, A
LD C, A
PUSH BC
CALL #BC32 ; INK 1, 00, 00
POP BC

CALL #BC38 ; BORDER 00, 00

LD A,#1
LD BC, #1A1A
CALL #BC32 ; INK 1, 26, 26

Page 1 sur 2 Le fuseau horaire est UTC+1 heure
Powered by phpBB® Forum Software © phpBB Group
https://www.phpbb.com/